WO2008144226A1 - Interactive storage meter for a storage container - Google Patents

Interactive storage meter for a storage container Download PDF

Info

Publication number
WO2008144226A1
WO2008144226A1 PCT/US2008/062817 US2008062817W WO2008144226A1 WO 2008144226 A1 WO2008144226 A1 WO 2008144226A1 US 2008062817 W US2008062817 W US 2008062817W WO 2008144226 A1 WO2008144226 A1 WO 2008144226A1
Authority
WO
WIPO (PCT)
Prior art keywords
storage capacity
items
group
user
storage
Prior art date
Application number
PCT/US2008/062817
Other languages
French (fr)
Inventor
Jeffrey Jon Weir
Colin R. Anthony
Original Assignee
Microsoft Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corporation filed Critical Microsoft Corporation
Publication of WO2008144226A1 publication Critical patent/WO2008144226A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2206/00Indexing scheme related to dedicated interfaces for computers
    • G06F2206/10Indexing scheme related to storage interfaces for computers, indexing schema related to group G06F3/06
    • G06F2206/1008Graphical user interface [GUI]

Definitions

  • non-meter-type user experiences such as lists, tables, forms and the like may be available to indicate what and how much digital content consumes specific computer-readable media
  • such experiences do not generally allow users to change the manner in which consuming items are visually presented (for example, folder groupings, description layout, or list organization), and typically do not allow users to directly manipulate the items.
  • an item identification software module associated with a client-side or network-side operating environment is configured to identify user-selectable grouping criteria and to logically arrange the items into groups in accordance with the grouping criteria.
  • Each logical group has zero or more items therein, which individually and collectively consume certain amounts of the storage capacity of the storage container.
  • An interactive graphical user interface presents group indicators in a manner that visually illustrates the relative amounts of storage capacity consumed by the groups (either with respect to total storage capacity of the storage container, or the amount of consumed storage capacity), and optionally the individual items within the groups.
  • the groups and/or items therein may be represented in a graphical user interface via indicators of any desired geometries and/or dimensions, such as contiguous, linear, horizontal or vertical segments.
  • the graphical user interface may also facilitate user manipulation (for example, access, synchronization, deletion, modification, or movement) of the items associated with each of the displayed groups.
  • a user gestures with respect to a portion of the interface (for example, the user hovers a control over a particular group indicator) to access manipulation options for the items associated with a particular group.
  • an item manipulation software module associated with a client- side or network-side operating environment is configured to receive the user's selection of a particular item associated with a particular group, and to facilitate user manipulation of the particular item in the manner indicated by the user via the graphical user interface.
  • FIG. 1 is a simplified functional block diagram of a storage management system configured to ascertain an allocation of items within a storage container and to present a graphical user interface to a user based on the allocation.
  • FIG. 2 is a flowchart illustrating certain aspects of a method for presenting the graphical user interface depicted in FIG. 1 to a user.
  • FIG. 3 illustrates an exemplary implementation of the graphical user interface depicted in FIG. 1.
  • FIG. 4 is a simplified functional block diagram of an exemplary configuration of an operating environment in which the system shown in FIG. 1 may be implemented or used.
  • GUI graphical user interface
  • a certain amount of the storage capacity of a particular storage container is consumed by physical, logical, or digital items, while another amount of the storage capacity remains for consumption.
  • the items are arranged into a number of logical groups (each group including zero or more items) in accordance with user-selectable grouping criteria. In an exemplary scenario, the grouping criteria are selectable via the GUI itself.
  • the GUI displays group indicators in a manner that illustrates the relative amount of storage capacity consumed by each group (with respect to either total storage capacity of the container or storage capacity consumed by items within the container), and optionally by the individual items within each group.
  • the group indicators are displayed as contiguous, linear horizontal segments of varying lengths corresponding to the relative amounts of storage capacity consumed by each group.
  • Other implementations are possible, however.
  • Examples of alternative GUI implementations include but are not limited to bar charts, pie charts, line charts, area charts, doughnut charts, bubble charts, or visualizations having other geometries or dimensions.
  • GUI User gestures with respect to a particular group indicator (for example, hovering over, clicking on, or otherwise using a control to select a group indicator or individual item) result in the GUI presenting other commands that can be performed on a particular group or item(s) associated therewith.
  • the GUI may be configured to facilitate user manipulation of the items associated with each of the displayed groups, and/or suggest to the user how portions of the remaining storage capacity of a particular storage container may be consumed.
  • FIG. 1 is a simplified functional block diagram of a storage management system 101 that is configured to ascertain an allocation of items 105 within one or more storage containers 103 (1-N storage containers are depicted), which may be accessed via any communication protocol or technique 109, and to present a graphical user interface 102 to a user 104 based on the allocation.
  • An exemplary graphical user interface 102 is shown and discussed in connection with FIG. 3.
  • Storage containers 103 represent physical or logical receptacles for storing items 105, which may themselves be physical or logical items, such as physical units, logical units, or digital content. Examples of storage containers 103 include but are not limited to local or remote computer-readable media that retain digital data (exemplary types of computer-readable media 404 are shown and discussed in connection with FIG.
  • Storage containers 103 have storage capacities. When the storage capacity of a particular storage container is neither full nor empty, a certain amount of the storage capacity can be considered to be consumed, and another amount of the storage capacity can be considered to be remaining for consumption. It will be understood that, as the storage capacity is consumed, the storage capacity may tend toward being “full” (for example, including or being consumed by more items), or being “empty” (for example, including or being consumed by fewer items).
  • Storage management system 101 is responsible for ascertaining how the storage capacities of one or more storage containers 103 are being consumed by items 105 within the containers, and for visually displaying to user 104 allocations of the storage capacities via interactive graphical user interface 102. Aspects of storage management system 101 may be implemented by a client-side application or device or a network-side application or device.
  • a simplified function block diagram of storage management system 101 includes: a user interface module 130, which further includes presentation tools 131 and controls 132; communication interfaces 140; one or more information repositories 108, which store grouping criteria 110 and optionally items 105 or references thereto (such as metadata); item identification module 150; and item manipulation module 160.
  • a user interface module 130 which further includes presentation tools 131 and controls 132; communication interfaces 140; one or more information repositories 108, which store grouping criteria 110 and optionally items 105 or references thereto (such as metadata); item identification module 150; and item manipulation module 160.
  • design choices and/or operating environments dictate how and whether specific functions of storage management system 101 are implemented. Such functions may be implemented using hardware, software, firmware, or combinations thereof.
  • User interface module 130 enables user 104 to interact with one or more functions provided by storage management system 101.
  • a combination of presentation tools 131 and controls 132 are configured to enable user 104 to select one or more storage containers 103, information about which is ascertained via storage management system 101 and visually illustrated via interactive graphical user interface
  • Presentation tools 131 provide output to user 104, and controls 132 of user interface module 130 facilitate the receipt of input from user 104.
  • An example of a presentation tool is a visual display (such as aspects of graphical user interface 102 or elements thereof), a monitor, a window, a menu, or a layout thereof.
  • An example of a control is an input device such as a remote control, a visual display (such as aspects of graphical user interface 102 or elements thereof), a mouse, a pen, a stylus, a trackball, a keyboard, a microphone, scanning device, a window, a menu, or a layout thereof, via which user 104 may issue commands. It will be appreciated that the same physical device or logical construct may function as an interface for both inputs to and outputs from user 104.
  • Communication interfaces 140 represent one or more physical or logical elements, such as connectivity devices, computer-executable instructions, sensors, buses, channels, networks, etc., that enable communication regarding items 105 between storage management system 101 and storage containers 103 via one or more communication protocols or techniques 109.
  • Information received at a given communication interface may traverse one or more abstract communication/networking layers such as physical layers, data link layers, network layers, transport layers, session layers, presentation layers, or application layers.
  • Information repository 108 represents data storage or organization for information relating to items 105 within storage container(s) 103, including but not limited to items 105 themselves, metadata associated with the items (metadata is any descriptive or identifying information in computer-processable form that is associated with particular items 105), or grouping criteria 110.
  • Information repository 108 may be implemented using various types and arrangements of computer-readable media 404 (discussed in connection with FIG. 4).
  • Grouping criteria 110 represent any information usable for decision-making regarding the presentation to user 104 of information relating to how the storage capacity of a particular storage container is or may be used. Virtually unlimited grouping criteria 110 and combinations thereof are possible. Grouping criteria 110 may be received, in whole or in part, from user 104 (via user interface module 130, such as via an aspect of GUI 102), pre-programmed into storage management system 101, or received from other sources. Grouping criteria 110 may be predetermined or dynamically created.
  • grouping criteria 110 include but are not limited to: information about user 104 (such as user preferences or information collected based on previous activities of the user with respect to storage management system 101); temporal references (such as times or dates); item-related information (such as item type, item quantity, digital content author or provider, item size/storage consumption, price/promotions, folder or other storage location, etc.), or third-party criteria such as advertising criteria, media source criteria, etc.
  • information about user 104 such as user preferences or information collected based on previous activities of the user with respect to storage management system 101
  • temporal references such as times or dates
  • item-related information such as item type, item quantity, digital content author or provider, item size/storage consumption, price/promotions, folder or other storage location, etc.
  • third-party criteria such as advertising criteria, media source criteria, etc.
  • Item identification module 150 is responsible for: (1) utilizing grouping criteria 110 to logically organize items 105 associated with a particular storage container 103 into logical groups that include zero or more items 105 consuming (collectively and/or individually) certain amounts of the total or consumed storage capacity of the particular storage container, and (2) identifying types of items and allocations thereof that could consume the remaining storage capacity of a particular storage container. [0027] With respect to the logical organization of items 105 into logical groups based on grouping criteria 110, item identification module 150 may use well-known query execution functions to ascertain the contents of a particular storage container in accordance with relevant grouping criteria 110.
  • item identification module 150 retrieves information regarding all items 105 associated with a particular storage container 103 and then ascertains the logical associations between items consuming storage capacity of the storage container based on grouping criteria 110.
  • queries from item identification module to logic associated with the storage container reflect the application of grouping criteria to items associated with the storage container, in a manner that is understood by the logic associated with the storage container.
  • the logical groups of zero or more items formed by the application of grouping criteria 110 to the items consuming storage capacity of a particular storage container 103 are generally implemented by data structures that represent associations between particular items 105 and particular logical groups.
  • Information repository 108 may be used to temporarily or permanently store the contents of the logical groups and/or data structures, such as items 105 or references thereto, while graphical user interface 102 is used to visually illustrate the logical groups (and/or items) and associated storage capacity allocation information.
  • item identification module 150 With respect to identifying items and allocations thereof that could consume the remaining storage capacity of a particular storage container, item identification module 150 first identifies the one or more types of items that can consume the storage capacity. Next, the amount of the storage capacity consumable by representative items (such as items having average characteristics, user-selected characteristics, or other characteristics) of each type are identified. Then, a suggested allocation (for example, by quantity or quality) of items of the identified type(s) that could consume the remaining storage capacity may be ascertained.
  • a data structure such as a table, is used to store information regarding item types and their representative characteristics, and the data structure is accessed by item identification module 150 in connection with determining a suggested allocation of items that could consume the remaining storage capacity of a particular storage container.
  • Item manipulation module 160 represents functionality that enables a user, via graphical user interface 102, to manipulate (for example, access, synchronize, delete, modify, or move via well-known tools or techniques), or responds to user manipulation of, selected items associated with each of the displayed logical groups.
  • FIG. 2 is a flowchart illustrating certain aspects of a method for presenting graphical user interface 102 to user 104. The method(s) illustrated in FIG. 2 may be implemented using computer-executable instructions executed by one or more general, multi-purpose, or single-purpose processors (exemplary computer-executable instructions 406 and processor(s) 402 are shown and discussed in connection with FIG. 4).
  • a particular user 104 referred to as George
  • a storage container in the form of a computer-readable medium (such as a temporary or permanent memory on George's PC) to store a number of digital files organized into folders on George's behalf, and that George has opted to use GUI 102 to see how the storage capacity of the computer-readable medium is (or can be) allocated.
  • a computer-readable medium such as a temporary or permanent memory on George's PC
  • the method begins at block 200, and continues at block 202, where items consuming a first portion of the total storage capacity (generally, the consumed portion of the total storage capacity) of a storage container are identified.
  • items consuming a first portion of the total storage capacity generally, the consumed portion of the total storage capacity
  • communication interfaces 140 between one or more elements of storage management system 101 and a particular storage container 103 enable item identification module 150 to identify items 105 associated with the particular storage container 103.
  • files stored in a particular computer- readable medium such as the hard drive are identified.
  • the identified items are logically arranged into groups based on user-selectable grouping criteria.
  • one or more grouping criteria 110 are automatically or manually selected.
  • user interface module 130 enables George to manually select grouping criteria 110 (for example, grouping items by folder and folder size) via GUI 102.
  • George may select grouping criteria 110 via another user interface, or grouping criteria 110 may be selected automatically in whole or in part.
  • Item identification module 105 is responsible for utilizing selected grouping criteria 110 to logically organize items 105 into logical groups that include zero or more items 105.
  • group indicators corresponding to the groups discussed in connection with block 204 are visually displayed in a manner that illustrates the amounts of storage capacity (either with respect to the total storage capacity or the first portion of the total storage capacity) consumed collectively or individually by items 105 therein.
  • graphical user interface 102 visually presents one or more group indicators. Graphical user interface 102 also facilitates user manipulation of all or some of the items associated with the displayed group indicators, as indicated at block 208. It will be appreciated that a one-to-one correspondence of groups and group indicators is not necessary. For example, certain groups or items may be aggregated and represented using a single indicator. In one exemplary scenario where it may be useful to display aggregated groups or items using fewer group indicators, there is more information associated with the contents of one or more storage containers than is displayable by a particular graphical user interface 102. For example, consider a graphical user interface that is 100 pixels wide, representing 100 Megabytes of storage capacity.
  • FIG. 3 illustrates an exemplary implementation of graphical user interface 102, which is used to display group indicators corresponding to folders of digital files (by folder size, from largest to smallest) on George's PC's hard drive.
  • graphical user interface 102 is a meter-type interface composed of a number of indicator segments arranged in a contiguous, linear, horizontal manner. It will be appreciated, however, that indicators and arrangements thereof may have any other desired geometries and/or dimensions, such as bar charts, pie charts, line charts, area charts, doughnut charts, bubble charts, or other visualizations.
  • One or more consumed storage capacity indicators 304 represent a certain amount of total storage capacity 302 that is consumed by one or more items 105 (of the hard drive using George's PC as an example).
  • graphics and/or text are used to expressly quantify units of the total storage capacity consumed by units of items.
  • consumed capacity storage indicator 304 may be in the form of text such as "X bytes used by X folders," or variations thereof.
  • Storage capacity indicator(s) 304 need not be express quantifiers — any visual indication of the amount total storage capacity relative to the amount of consumed storage capacity may serve as a consumed storage capacity indicator 304 without a specific label.
  • One or more remaining storage capacity indicators 306 represent an amount of total storage capacity 302 that remains for consumption. As described in connection with consumed storage capacity indicator(s) 304, remaining storage capacity indicator(s) 306 may expressly quantify remaining units of the total storage capacity, or may simply visually indicate the amount of remaining storage capacity relative to the amount of total storage capacity. Remaining storage capacity indicators 306 (or separate indicators) may also be used to provide a suggested allocation of items that could consume the remaining storage capacity of the storage container, using the same or different techniques used to illustrate how the storage capacity of the storage container is consumed by various items.
  • Group indicators 308 represent logical sets of zero or more items, formed based on grouping criteria 110, which individually or collectively consume certain amounts of the total or consumed storage capacity (such amounts are represented by storage capacity consumption indicators 310) of a particular storage container such as George's PC's hard drive.
  • Storage capacity consumption indicators 310 are configured (as shown, by size) to visually illustrate the relative amounts of capacity consumed by the items associated with their corresponding groups — in the case of the hard drive, in accordance with folder size from largest to smallest. It may be desirable to use color, graphics, or text in addition to size or shape to illustrate relative amounts of capacity consumed.
  • group indicators 308 and/or storage capacity consumption indicators 310 may expressly quantify units of capacity consumed by units of items or groups (for example, "X bytes used by Photos folder"). It will be understood that group indicators and storage capacity consumption indicators 310 need not be separate entities — for example, segments sized or shaped or otherwise labeled relative to the amount of total or consumed storage capacity of the logical groups (or items therein) they represent may be displayed, and such segments may serve as both group indicators and storage capacity consumption indicators 310.
  • Group indicators are generally user-selectable. Other indicators, such as storage capacity consumption indicators 310 or remaining storage capacity indicator(s) 306, may also be user-selectable.
  • a user gestures with respect to a portion of graphical user interface 102 to access options for arranging or manipulating indicators and/or groups or items represented thereby.
  • George may use a control such as a mouse/cursor to hover over or select a particular indicator, and to receive options for: re-grouping items stored on the PC's hard drive (or portions thereof) in accordance with new grouping criteria 110; suggestions regarding quantities and/or qualities of items that may consume the remaining storage capacity of the hard drive; or accessing, synchronizing, deleting, modifying, adding, or moving files or folders.
  • a single meter-type graphical user interface it is possible for a single meter-type graphical user interface to give a user a visual sense of how much of the storage capacity of a particular storage container is being used, and what items are consuming the storage capacity.
  • FIG. 4 is a block diagram of an exemplary configuration of an operating environment 400 (such as a client-side device or client-based application or a network server or application) in which all or part of storage management system 101, and/or the method(s) shown and discussed in connection with FIG. 3 may be implemented or used.
  • an operating environment 400 such as a client-side device or client-based application or a network server or application
  • Operating environment 400 is generally indicative of a wide variety of general-purpose or special-purpose computing environments, and is not intended to suggest any limitation as to the scope of use or functionality of the system(s) and methods described herein.
  • operating environment includes processor 402, computer-readable media 404, and computer-executable instructions 406.
  • One or more internal buses 421, which are widely available elements, may be used to carry data, addresses, control signals and other information within, to, or from operating environment 400 or elements thereof.
  • Processor 402 which may be a real or a virtual processor, controls functions of operating environment 400 by executing computer-executable instructions 406.
  • Processor 402 may execute instructions 406 at the assembly, compiled, or machine-level to perform a particular process.
  • Computer-readable media 404 represent any number and combination of local or remote devices, in any form, now known or later developed, capable of recording, storing, or transmitting computer-readable data, such as computer-executable instructions 406 or items of digital content.
  • computer-readable media 404 may be, or may include, a semiconductor memory (such as a read only memory (“ROM”), any type of programmable ROM (“PROM”), a random access memory (“RAM”), or a flash memory, for example); a magnetic storage device (such as a floppy disk drive, a hard disk drive, a magnetic drum, a magnetic tape, or a magneto-optical disk); an optical storage device (such as any type of compact disk or digital versatile disk); a bubble memory; a cache memory; a core memory; a holographic memory; a memory stick; a paper tape; a punch card; or any combination thereof.
  • ROM read only memory
  • PROM programmable ROM
  • RAM random access memory
  • flash memory for example
  • Computer-readable media 404 may also include transmission media and data associated therewith.
  • Examples of transmission media/data include, but are not limited to, data embodied in any form of wireline or wireless transmission, such as packetized or non-packetized data carried by a modulated carrier signal.
  • Computer-executable instructions 406 represent any signal processing methods or stored instructions. Generally, computer-executable instructions 406 are implemented as software components according to well-known practices for component-based software development, and encoded in computer-readable media (such as computer-readable media 404). Computer programs may be combined or distributed in various ways. Computer- executable instructions 406, however, are not limited to implementation by any specific embodiments of computer programs, and in other instances may be implemented by, or executed in, hardware, software, firmware, or any combination thereof.
  • certain computer-executable instructions 406 implement user interface functions 430, which implement aspects of user interface module 130 (shown in FIG.l); certain computer-executable instructions 406 implement communication interface functions 440, which implement aspects of communication interface(s) 1400; certain computer-executable instructions 406 implement item identification functions 450, which implement aspects of item identification module 150; and certain computer-executable instructions 406 implement item manipulation functions 460, which implement aspects of item manipulation module 160.
  • Input interface(s) 416 are physical or logical elements that facilitate receipt of input to operating environment 400.
  • Input may be received using any type of now known or later-developed physical or logical elements, such as user interfaces, remote controls, displays, mice, pens, styluses, trackballs, keyboards, microphones, scanning devices, and all types of devices that are used input data.
  • Output interface(s) 418 are physical or logical elements that facilitate provisioning of output from operating environment 400. Output may be provided using any type of now known or later-developed physical or logical elements, such as user interfaces, displays, printers, speakers, disk drives, and the like.
  • Network interface(s) 419 are one or more physical or logical elements that enable communication by operating environment 400 via one or more protocols or techniques.
  • Specialized hardware 442 represents any hardware or firmware that implements functions of operating environment 400.
  • Examples of specialized communication hardware include encoder/decoders (“CODECs”), decrypters, application-specific integrated circuits, secure clocks, and the like.
  • operating environment 400 or storage management system 101 may include fewer, more, or different components or functions than those described.
  • functional components of operating environment 400 or storage management system 101 may be implemented by one or more devices, which are co-located or remotely located, in a variety of ways.
  • connections depicted herein may be logical or physical in practice to achieve a coupling or communicative interface between elements. Connections may be implemented, among other ways, as inter-process communications among software processes, or inter-machine communications among networked computers.

Abstract

An interactive, meter-type graphical user interface ('GUI') visually illustrates how the storage capacity of a physical or logical storage container is consumed by a number of items. Examples of items include physical units, logical units, or files of digital content. The items are arranged into a number of logical groups (each group including zero or more items) in accordance with user-selectable grouping criteria. The GUI displays group indicators in a manner that illustrates the relative amount of storage capacity consumed by each group (with respect to either total storage capacity or consumed storage capacity), and optionally by the individual items within each group. The GUI may also facilitate user manipulation of the items associated with each of the displayed groups, or suggest to the user how the unused storage capacity of a particular storage container may be consumed.

Description

INTERACTIVE STORAGE METER FOR A STORAGE CONTAINER
BACKGROUND
[0001] Users of many types of physical and logical storage containers are generally interested in knowing how storage capacities of the containers are being consumed by items within the containers. Computer-readable media that retain digital data are common types of storage containers. Typical graphical, meter-type user experiences for computer- readable media containers indicate how much storage capacity is being used overall, but often fail to indicate how the storage capacity is allocated (for example, the specific digital content that is consuming storage capacity is not identified).
[0002] Although non-meter-type user experiences such as lists, tables, forms and the like may be available to indicate what and how much digital content consumes specific computer-readable media, such experiences do not generally allow users to change the manner in which consuming items are visually presented (for example, folder groupings, description layout, or list organization), and typically do not allow users to directly manipulate the items.
[0003] Users of storage containers are also generally interested in learning what can be done with unused storage capacity of a storage container. As such, it is desirable to provide users with hints about how such unused storage capacity can be consumed.
SUMMARY
[0004] Interactive, meter-type user experiences that visually display allocations of the storage capacities of physical or logical storage containers are discussed herein. In general, a certain amount of the storage capacity of a particular storage container is consumed by a number of items, such as physical units, logical units, or files of digital content, while another amount of the storage capacity remains for consumption. [0005] The items consuming storage capacity are logically arranged into a number of groups in accordance with user-selectable grouping criteria. Virtually unlimited user- selectable grouping criteria and combinations thereof are possible, such as item-related information, container-related information, client-side or server-side operating environment characteristics or capabilities, temporal references, and user-related information, among others. In one exemplary implementation, an item identification software module associated with a client-side or network-side operating environment is configured to identify user-selectable grouping criteria and to logically arrange the items into groups in accordance with the grouping criteria.
[0006] Each logical group has zero or more items therein, which individually and collectively consume certain amounts of the storage capacity of the storage container. An interactive graphical user interface presents group indicators in a manner that visually illustrates the relative amounts of storage capacity consumed by the groups (either with respect to total storage capacity of the storage container, or the amount of consumed storage capacity), and optionally the individual items within the groups. For example, the groups and/or items therein may be represented in a graphical user interface via indicators of any desired geometries and/or dimensions, such as contiguous, linear, horizontal or vertical segments.
[0007] The graphical user interface may also facilitate user manipulation (for example, access, synchronization, deletion, modification, or movement) of the items associated with each of the displayed groups. In an exemplary scenario, a user gestures with respect to a portion of the interface (for example, the user hovers a control over a particular group indicator) to access manipulation options for the items associated with a particular group. In an exemplary implementation, an item manipulation software module associated with a client- side or network-side operating environment is configured to receive the user's selection of a particular item associated with a particular group, and to facilitate user manipulation of the particular item in the manner indicated by the user via the graphical user interface.
[0008] The interactive storage meter experience may further suggest to the user how portions of the remaining storage capacity of a particular storage container can be consumed. [0009] This Summary is provided to introduce a selection of concepts in a simplified form. The concepts are further described in the Detailed Description section. Elements or steps other than those described in this Summary are possible, and no element or step is necessarily required. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended for use as an aid in determining the scope of the claimed subject matter. The claimed subject matter is not limited to implementations that solve any or all disadvantages noted in any part of this disclosure. BRIEF DESCRIPTION OF THE DRAWINGS [0010] FIG. 1 is a simplified functional block diagram of a storage management system configured to ascertain an allocation of items within a storage container and to present a graphical user interface to a user based on the allocation.
[0011] FIG. 2 is a flowchart illustrating certain aspects of a method for presenting the graphical user interface depicted in FIG. 1 to a user.
[0012] FIG. 3 illustrates an exemplary implementation of the graphical user interface depicted in FIG. 1.
[0013] FIG. 4 is a simplified functional block diagram of an exemplary configuration of an operating environment in which the system shown in FIG. 1 may be implemented or used.
DETAILED DESCRIPTION
[0014] An interactive, meter-type graphical user interface ("GUI") implemented within a client-based or network-based operating environment visually illustrates how the storage capacity of a physical or logical storage container is allocated. A certain amount of the storage capacity of a particular storage container is consumed by physical, logical, or digital items, while another amount of the storage capacity remains for consumption. [0015] The items are arranged into a number of logical groups (each group including zero or more items) in accordance with user-selectable grouping criteria. In an exemplary scenario, the grouping criteria are selectable via the GUI itself. The GUI displays group indicators in a manner that illustrates the relative amount of storage capacity consumed by each group (with respect to either total storage capacity of the container or storage capacity consumed by items within the container), and optionally by the individual items within each group. In an exemplary implementation of the GUI, the group indicators are displayed as contiguous, linear horizontal segments of varying lengths corresponding to the relative amounts of storage capacity consumed by each group. Other implementations are possible, however. Examples of alternative GUI implementations include but are not limited to bar charts, pie charts, line charts, area charts, doughnut charts, bubble charts, or visualizations having other geometries or dimensions. User gestures with respect to a particular group indicator (for example, hovering over, clicking on, or otherwise using a control to select a group indicator or individual item) result in the GUI presenting other commands that can be performed on a particular group or item(s) associated therewith. For example, the GUI may be configured to facilitate user manipulation of the items associated with each of the displayed groups, and/or suggest to the user how portions of the remaining storage capacity of a particular storage container may be consumed. [0016] Turning to the drawings, where like numerals designate like components, FIG. 1 is a simplified functional block diagram of a storage management system 101 that is configured to ascertain an allocation of items 105 within one or more storage containers 103 (1-N storage containers are depicted), which may be accessed via any communication protocol or technique 109, and to present a graphical user interface 102 to a user 104 based on the allocation. An exemplary graphical user interface 102 is shown and discussed in connection with FIG. 3. [0017] Storage containers 103 represent physical or logical receptacles for storing items 105, which may themselves be physical or logical items, such as physical units, logical units, or digital content. Examples of storage containers 103 include but are not limited to local or remote computer-readable media that retain digital data (exemplary types of computer-readable media 404 are shown and discussed in connection with FIG. 4), energy storage equipment, and shopping carts. Exemplary items 105 include but are not limited to items of digital content (such as files or folders), goods, processes performed by devices, articles (and digital representations thereof)— such as money, points, certificates, or coupons—issued with the expectation of redemption, or units of materials or properties thereof. [0018] Storage containers 103 have storage capacities. When the storage capacity of a particular storage container is neither full nor empty, a certain amount of the storage capacity can be considered to be consumed, and another amount of the storage capacity can be considered to be remaining for consumption. It will be understood that, as the storage capacity is consumed, the storage capacity may tend toward being "full" (for example, including or being consumed by more items), or being "empty" (for example, including or being consumed by fewer items).
[0019] Storage management system 101 is responsible for ascertaining how the storage capacities of one or more storage containers 103 are being consumed by items 105 within the containers, and for visually displaying to user 104 allocations of the storage capacities via interactive graphical user interface 102. Aspects of storage management system 101 may be implemented by a client-side application or device or a network-side application or device.
[0020] A simplified function block diagram of storage management system 101 includes: a user interface module 130, which further includes presentation tools 131 and controls 132; communication interfaces 140; one or more information repositories 108, which store grouping criteria 110 and optionally items 105 or references thereto (such as metadata); item identification module 150; and item manipulation module 160. In general, design choices and/or operating environments dictate how and whether specific functions of storage management system 101 are implemented. Such functions may be implemented using hardware, software, firmware, or combinations thereof.
[0021] User interface module 130 enables user 104 to interact with one or more functions provided by storage management system 101. In one scenario, a combination of presentation tools 131 and controls 132 are configured to enable user 104 to select one or more storage containers 103, information about which is ascertained via storage management system 101 and visually illustrated via interactive graphical user interface
102.
[0022] Presentation tools 131 provide output to user 104, and controls 132 of user interface module 130 facilitate the receipt of input from user 104. An example of a presentation tool is a visual display (such as aspects of graphical user interface 102 or elements thereof), a monitor, a window, a menu, or a layout thereof. An example of a control is an input device such as a remote control, a visual display (such as aspects of graphical user interface 102 or elements thereof), a mouse, a pen, a stylus, a trackball, a keyboard, a microphone, scanning device, a window, a menu, or a layout thereof, via which user 104 may issue commands. It will be appreciated that the same physical device or logical construct may function as an interface for both inputs to and outputs from user 104.
[0023] Communication interfaces 140 represent one or more physical or logical elements, such as connectivity devices, computer-executable instructions, sensors, buses, channels, networks, etc., that enable communication regarding items 105 between storage management system 101 and storage containers 103 via one or more communication protocols or techniques 109. Information received at a given communication interface may traverse one or more abstract communication/networking layers such as physical layers, data link layers, network layers, transport layers, session layers, presentation layers, or application layers.
[0024] Information repository 108 represents data storage or organization for information relating to items 105 within storage container(s) 103, including but not limited to items 105 themselves, metadata associated with the items (metadata is any descriptive or identifying information in computer-processable form that is associated with particular items 105), or grouping criteria 110. Information repository 108 may be implemented using various types and arrangements of computer-readable media 404 (discussed in connection with FIG. 4).
[0025] Grouping criteria 110 represent any information usable for decision-making regarding the presentation to user 104 of information relating to how the storage capacity of a particular storage container is or may be used. Virtually unlimited grouping criteria 110 and combinations thereof are possible. Grouping criteria 110 may be received, in whole or in part, from user 104 (via user interface module 130, such as via an aspect of GUI 102), pre-programmed into storage management system 101, or received from other sources. Grouping criteria 110 may be predetermined or dynamically created. Some examples of grouping criteria 110 include but are not limited to: information about user 104 (such as user preferences or information collected based on previous activities of the user with respect to storage management system 101); temporal references (such as times or dates); item-related information (such as item type, item quantity, digital content author or provider, item size/storage consumption, price/promotions, folder or other storage location, etc.), or third-party criteria such as advertising criteria, media source criteria, etc. [0026] Item identification module 150 is responsible for: (1) utilizing grouping criteria 110 to logically organize items 105 associated with a particular storage container 103 into logical groups that include zero or more items 105 consuming (collectively and/or individually) certain amounts of the total or consumed storage capacity of the particular storage container, and (2) identifying types of items and allocations thereof that could consume the remaining storage capacity of a particular storage container. [0027] With respect to the logical organization of items 105 into logical groups based on grouping criteria 110, item identification module 150 may use well-known query execution functions to ascertain the contents of a particular storage container in accordance with relevant grouping criteria 110. In one scenario, item identification module 150 retrieves information regarding all items 105 associated with a particular storage container 103 and then ascertains the logical associations between items consuming storage capacity of the storage container based on grouping criteria 110. In an alternative scenario, queries from item identification module to logic associated with the storage container reflect the application of grouping criteria to items associated with the storage container, in a manner that is understood by the logic associated with the storage container. [0028] The logical groups of zero or more items formed by the application of grouping criteria 110 to the items consuming storage capacity of a particular storage container 103 are generally implemented by data structures that represent associations between particular items 105 and particular logical groups. Information repository 108 may be used to temporarily or permanently store the contents of the logical groups and/or data structures, such as items 105 or references thereto, while graphical user interface 102 is used to visually illustrate the logical groups (and/or items) and associated storage capacity allocation information. [0029] With respect to identifying items and allocations thereof that could consume the remaining storage capacity of a particular storage container, item identification module 150 first identifies the one or more types of items that can consume the storage capacity. Next, the amount of the storage capacity consumable by representative items (such as items having average characteristics, user-selected characteristics, or other characteristics) of each type are identified. Then, a suggested allocation (for example, by quantity or quality) of items of the identified type(s) that could consume the remaining storage capacity may be ascertained. In one possible implementation, a data structure, such as a table, is used to store information regarding item types and their representative characteristics, and the data structure is accessed by item identification module 150 in connection with determining a suggested allocation of items that could consume the remaining storage capacity of a particular storage container.
[0030] Item manipulation module 160 represents functionality that enables a user, via graphical user interface 102, to manipulate (for example, access, synchronize, delete, modify, or move via well-known tools or techniques), or responds to user manipulation of, selected items associated with each of the displayed logical groups. [0031] With continuing reference to FIG. 1, FIG. 2 is a flowchart illustrating certain aspects of a method for presenting graphical user interface 102 to user 104. The method(s) illustrated in FIG. 2 may be implemented using computer-executable instructions executed by one or more general, multi-purpose, or single-purpose processors (exemplary computer-executable instructions 406 and processor(s) 402 are shown and discussed in connection with FIG. 4). Unless specifically stated, the methods described herein are not constrained to a particular order or sequence. In addition, some of the described method(s) or elements thereof can occur or be performed concurrently. It will be further understood that all of the steps shown need not occur in performance of the functions described herein. [0032] For exemplary purposes, it is assumed that a particular user 104, referred to as George, is using a storage container in the form of a computer-readable medium (such as a temporary or permanent memory on George's PC) to store a number of digital files organized into folders on George's behalf, and that George has opted to use GUI 102 to see how the storage capacity of the computer-readable medium is (or can be) allocated. [0033] The method begins at block 200, and continues at block 202, where items consuming a first portion of the total storage capacity (generally, the consumed portion of the total storage capacity) of a storage container are identified. In the context of storage management system 101, communication interfaces 140 between one or more elements of storage management system 101 and a particular storage container 103 enable item identification module 150 to identify items 105 associated with the particular storage container 103. Using George's PC as an example, files stored in a particular computer- readable medium such as the hard drive are identified. [0034] Next, at block 204, the identified items are logically arranged into groups based on user-selectable grouping criteria. In the context of storage management system 101, one or more grouping criteria 110 are automatically or manually selected. In one scenario, user interface module 130 enables George to manually select grouping criteria 110 (for example, grouping items by folder and folder size) via GUI 102. Alternatively, George may select grouping criteria 110 via another user interface, or grouping criteria 110 may be selected automatically in whole or in part. Item identification module 105 is responsible for utilizing selected grouping criteria 110 to logically organize items 105 into logical groups that include zero or more items 105. [0035] As indicated at block 206, group indicators corresponding to the groups discussed in connection with block 204 are visually displayed in a manner that illustrates the amounts of storage capacity (either with respect to the total storage capacity or the first portion of the total storage capacity) consumed collectively or individually by items 105 therein. In the context of storage management system 101, graphical user interface 102 visually presents one or more group indicators. Graphical user interface 102 also facilitates user manipulation of all or some of the items associated with the displayed group indicators, as indicated at block 208. It will be appreciated that a one-to-one correspondence of groups and group indicators is not necessary. For example, certain groups or items may be aggregated and represented using a single indicator. In one exemplary scenario where it may be useful to display aggregated groups or items using fewer group indicators, there is more information associated with the contents of one or more storage containers than is displayable by a particular graphical user interface 102. For example, consider a graphical user interface that is 100 pixels wide, representing 100 Megabytes of storage capacity. If 200 containers need to be represented by the graphical user interface, and the containers collectively consume 50 Megabytes of storage capacity, the graphical user interface would not have enough visual space to represent each of the containers—representing a number of containers that collectively consume a nominal amount of storage space by a single indicator may be desirable. [0036] With continuing reference to FIGs. 1 and 2, FIG. 3 illustrates an exemplary implementation of graphical user interface 102, which is used to display group indicators corresponding to folders of digital files (by folder size, from largest to smallest) on George's PC's hard drive. As shown, graphical user interface 102 is a meter-type interface composed of a number of indicator segments arranged in a contiguous, linear, horizontal manner. It will be appreciated, however, that indicators and arrangements thereof may have any other desired geometries and/or dimensions, such as bar charts, pie charts, line charts, area charts, doughnut charts, bubble charts, or other visualizations.
[0037] One or more consumed storage capacity indicators 304 represent a certain amount of total storage capacity 302 that is consumed by one or more items 105 (of the hard drive using George's PC as an example). In an exemplary implementation, graphics and/or text are used to expressly quantify units of the total storage capacity consumed by units of items. Using George's hard drive as an example, consumed capacity storage indicator 304 may be in the form of text such as "X bytes used by X folders," or variations thereof. Storage capacity indicator(s) 304, however, need not be express quantifiers — any visual indication of the amount total storage capacity relative to the amount of consumed storage capacity may serve as a consumed storage capacity indicator 304 without a specific label. [0038] One or more remaining storage capacity indicators 306 (one shown) represent an amount of total storage capacity 302 that remains for consumption. As described in connection with consumed storage capacity indicator(s) 304, remaining storage capacity indicator(s) 306 may expressly quantify remaining units of the total storage capacity, or may simply visually indicate the amount of remaining storage capacity relative to the amount of total storage capacity. Remaining storage capacity indicators 306 (or separate indicators) may also be used to provide a suggested allocation of items that could consume the remaining storage capacity of the storage container, using the same or different techniques used to illustrate how the storage capacity of the storage container is consumed by various items. [0039] Group indicators 308 (four shown) represent logical sets of zero or more items, formed based on grouping criteria 110, which individually or collectively consume certain amounts of the total or consumed storage capacity (such amounts are represented by storage capacity consumption indicators 310) of a particular storage container such as George's PC's hard drive. Storage capacity consumption indicators 310 are configured (as shown, by size) to visually illustrate the relative amounts of capacity consumed by the items associated with their corresponding groups — in the case of the hard drive, in accordance with folder size from largest to smallest. It may be desirable to use color, graphics, or text in addition to size or shape to illustrate relative amounts of capacity consumed. For example, group indicators 308 and/or storage capacity consumption indicators 310 may expressly quantify units of capacity consumed by units of items or groups (for example, "X bytes used by Photos folder"). It will be understood that group indicators and storage capacity consumption indicators 310 need not be separate entities — for example, segments sized or shaped or otherwise labeled relative to the amount of total or consumed storage capacity of the logical groups (or items therein) they represent may be displayed, and such segments may serve as both group indicators and storage capacity consumption indicators 310.
[0040] Group indicators are generally user-selectable. Other indicators, such as storage capacity consumption indicators 310 or remaining storage capacity indicator(s) 306, may also be user-selectable. In one scenario, a user gestures with respect to a portion of graphical user interface 102 to access options for arranging or manipulating indicators and/or groups or items represented thereby. For example, George may use a control such as a mouse/cursor to hover over or select a particular indicator, and to receive options for: re-grouping items stored on the PC's hard drive (or portions thereof) in accordance with new grouping criteria 110; suggestions regarding quantities and/or qualities of items that may consume the remaining storage capacity of the hard drive; or accessing, synchronizing, deleting, modifying, adding, or moving files or folders. [0041] In this manner, it is possible for a single meter-type graphical user interface to give a user a visual sense of how much of the storage capacity of a particular storage container is being used, and what items are consuming the storage capacity. The user is able to change what groupings of items are shown based on user-selectable grouping criteria, and is able to navigate to, and take action on, particular items directly from the graphical user interface. The user can also learn about what can be done with remaining storage capacity, such as item types and quantities/qualities thereof that may be stored. [0042] With continued reference to FIGs. 1-3, FIG. 4 is a block diagram of an exemplary configuration of an operating environment 400 (such as a client-side device or client-based application or a network server or application) in which all or part of storage management system 101, and/or the method(s) shown and discussed in connection with FIG. 3 may be implemented or used. Operating environment 400 is generally indicative of a wide variety of general-purpose or special-purpose computing environments, and is not intended to suggest any limitation as to the scope of use or functionality of the system(s) and methods described herein. [0043] As shown, operating environment includes processor 402, computer-readable media 404, and computer-executable instructions 406. One or more internal buses 421, which are widely available elements, may be used to carry data, addresses, control signals and other information within, to, or from operating environment 400 or elements thereof. [0044] Processor 402, which may be a real or a virtual processor, controls functions of operating environment 400 by executing computer-executable instructions 406. Processor 402 may execute instructions 406 at the assembly, compiled, or machine-level to perform a particular process.
[0045] Computer-readable media 404 represent any number and combination of local or remote devices, in any form, now known or later developed, capable of recording, storing, or transmitting computer-readable data, such as computer-executable instructions 406 or items of digital content. In particular, computer-readable media 404 may be, or may include, a semiconductor memory (such as a read only memory ("ROM"), any type of programmable ROM ("PROM"), a random access memory ("RAM"), or a flash memory, for example); a magnetic storage device (such as a floppy disk drive, a hard disk drive, a magnetic drum, a magnetic tape, or a magneto-optical disk); an optical storage device (such as any type of compact disk or digital versatile disk); a bubble memory; a cache memory; a core memory; a holographic memory; a memory stick; a paper tape; a punch card; or any combination thereof. Computer-readable media 404 may also include transmission media and data associated therewith. Examples of transmission media/data include, but are not limited to, data embodied in any form of wireline or wireless transmission, such as packetized or non-packetized data carried by a modulated carrier signal.
[0046] Computer-executable instructions 406 represent any signal processing methods or stored instructions. Generally, computer-executable instructions 406 are implemented as software components according to well-known practices for component-based software development, and encoded in computer-readable media (such as computer-readable media 404). Computer programs may be combined or distributed in various ways. Computer- executable instructions 406, however, are not limited to implementation by any specific embodiments of computer programs, and in other instances may be implemented by, or executed in, hardware, software, firmware, or any combination thereof.
[0047] As shown, certain computer-executable instructions 406 implement user interface functions 430, which implement aspects of user interface module 130 (shown in FIG.l); certain computer-executable instructions 406 implement communication interface functions 440, which implement aspects of communication interface(s) 1400; certain computer-executable instructions 406 implement item identification functions 450, which implement aspects of item identification module 150; and certain computer-executable instructions 406 implement item manipulation functions 460, which implement aspects of item manipulation module 160. [0048] Input interface(s) 416 are physical or logical elements that facilitate receipt of input to operating environment 400. Input may be received using any type of now known or later-developed physical or logical elements, such as user interfaces, remote controls, displays, mice, pens, styluses, trackballs, keyboards, microphones, scanning devices, and all types of devices that are used input data. [0049] Output interface(s) 418 are physical or logical elements that facilitate provisioning of output from operating environment 400. Output may be provided using any type of now known or later-developed physical or logical elements, such as user interfaces, displays, printers, speakers, disk drives, and the like.
[0050] Network interface(s) 419 (aspects of which are discussed in more detail above, in connection with communication interfaces 140 shown in FIG. 1) are one or more physical or logical elements that enable communication by operating environment 400 via one or more protocols or techniques.
[0051] Specialized hardware 442 represents any hardware or firmware that implements functions of operating environment 400. Examples of specialized communication hardware include encoder/decoders ("CODECs"), decrypters, application-specific integrated circuits, secure clocks, and the like.
[0052] It will be appreciated that particular configurations of operating environment 400 or storage management system 101 may include fewer, more, or different components or functions than those described. In addition, functional components of operating environment 400 or storage management system 101 may be implemented by one or more devices, which are co-located or remotely located, in a variety of ways.
[0053] Although the subject matter herein has been described in language specific to structural features and/or methodological acts, it is also to be understood that the subject matter defined in the claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims.
[0054] It will further be understood that when one element is indicated as being responsive to another element, the elements may be directly or indirectly coupled. Connections depicted herein may be logical or physical in practice to achieve a coupling or communicative interface between elements. Connections may be implemented, among other ways, as inter-process communications among software processes, or inter-machine communications among networked computers.
[0055] The word "exemplary" is used herein to mean serving as an example, instance, or illustration. Any implementation or aspect thereof described herein as "exemplary" is not necessarily to be constructed as preferred or advantageous over other implementations or aspects thereof.
[0056] As it is understood that embodiments other than the specific embodiments described above may be devised without departing from the spirit and scope of the appended claims, it is intended that the scope of the subject matter herein will be governed by the following claims.

Claims

CLAIMSWhat is claimed is:
1. A computer-readable medium (404) encoded with computer-executable instructions (406) which, when executed by a processor (402), perform a method (200) for presenting to a user (104) a graphical user interface (102) associated with a storage container (103) having a storage capacity, the method comprising: identifying (202) a plurality of items (105), the plurality of items collectively consuming a first portion of the storage capacity; logically arranging (204) the plurality of items into a plurality of groups in accordance with user-selectable grouping criteria, each group having associated therewith zero or more items and a storage capacity consumption amount representing an amount of the storage capacity or the first portion of the storage capacity consumed by the zero or more items; and arranging for display (206) of at least some of the groups in a manner that visually illustrates a relative size of the storage capacity consumption amount associated with each of the displayed groups.
2. The computer-readable medium (404) according to claim 1, wherein the method step of arranging for display further comprises: arranging for display of at least some of the groups in a manner that facilitates user manipulation (208) of the zero or more items associated with each of the displayed groups.
3. The computer-readable medium (404) according to claim 1, wherein the method further comprises: identifying a second portion of the storage capacity remaining for consumption; identifying a type of item that can consume the storage capacity; predicting an amount of the storage capacity consumed by a representative item of the identified type; based on the identified type and the predicted amount of the storage capacity, determining an allocation of items of the identified type that could consume the second portion of the storage capacity.
4. The computer-readable medium (404) according to claim 3, wherein the method step of determining an allocation of items comprises determining a quantity of items.
5. The computer-readable medium (404) according to claim 2, wherein the method further comprises: arranging to notify the user of the allocation.
6. The computer-readable medium (404) according to claim 5, wherein the representative item of the identified type comprises an item of the identified type having predetermined characteristics, the predetermined characteristics selected from the group consisting of: average characteristics; characteristics associated with one or more items of the plurality of items; and user-selected characteristics.
7. The computer-readable medium (404) according to claim 5, wherein the method step of identifying a type of item that can consume the storage capacity comprises identifying a plurality of types of items that can consume the storage capacity, the method step of predicting an amount of the storage capacity consumable by a representative item of the identified type comprises predicting the amounts of storage capacity consumable by representative items of each identified type, the method step of determining an allocation of representative items that could consume the second portion of the storage capacity comprises selecting at least some of the plurality of types of items that can consume the storage capacity, and determining quantities of representative items of each selected type that could consume the second portion of the storage capacity, and the method step of arranging to notify the user of the allocation comprises arranging to notify the user of the quantities of representative items of each selected type that could consume the second portion of the storage capacity.
8. The computer-readable medium (404) according to claim 1, wherein the method further comprises: receiving a user selection of a particular item associated with a particular displayed group; and based on the user selection, facilitating manipulation of the particular item.
9. The computer-readable medium (404) according to claim 8, wherein the method step of facilitating manipulation is selected from the group consisting of: navigating to the particular item; moving the particular item; responding to user movement of the particular item; synchronizing the particular item; accessing the particular item; modifying the particular item; deleting the particular item; and changing the group with which the particular item is associated.
10. The computer-readable medium (404) according to claim 8, wherein the method step of receiving a user selection further comprises: receiving an indication of a user gesture with respect to a portion of the display of at least some of the groups.
11. The computer-readable medium (404) according to claim 1 , wherein the storage container is selected from the group consisting of: a physical storage container; and a logical storage container.
12. The computer-readable medium (404) according to claim 1, wherein the plurality of items are selected from the group consisting of: physical units; logical units; and digital content.
13. The computer-readable medium (404) according to claim 1, wherein the computer- executable instructions are executable by a client-side processor or a network-side processor.
14. A graphical user interface (102) for displaying a storage meter for a storage container (103), the storage container having a storage capacity, a first amount of the storage capacity being consumed by a plurality of items (105) and a second amount of the storage capacity remaining for consumption, the graphical user interface comprising: a consumed storage capacity indicator portion (304) visually illustrating the first amount of the storage capacity, the consumed storage capacity indicator portion comprising a number of user-selectable group indicators (308), each group indicator having associated therewith zero or more items, and a number of storage capacity consumption indicators (310), each storage capacity consumption indicator corresponding to a particular group indicator and visually illustrating a relative amount of the storage capacity or the first amount of the storage capacity consumed by the zero or more items associated with the particular group indicator; and a remaining storage capacity indicator portion (306) visually illustrating the second amount of the storage capacity relative to the first amount of the storage capacity.
15. The graphical user interface (102) according to claim 14, wherein user selection of a particular group indicator facilitates user manipulation of the zero or more items associated therewith.
16. The graphical user interface (102) according to claim 14, wherein the storage capacity consumption indicators are arranged in a manner selected from the group consisting of: horizontally; vertically; and geometrically.
17. A system (101) for managing items (105) consuming storage associated with a storage container (103) having a storage capacity, a portion of the storage capacity consumed by a plurality of items, the system comprising: an item identification module (150) configured to identify user-selectable grouping criteria (110) and to logically arrange the plurality of items into a plurality of groups in accordance with the grouping criteria, each group having associated therewith zero or more items and a storage capacity consumption amount representing an amount of the storage capacity or the portion of the storage capacity consumed by the plurality of items being consumed by the zero or more items; and a user interface module (130) responsive to the item identification module, the user interface module configured to visually display a number of user-selectable group indicators, each group indicator representing one of the plurality of groups identified via the item identification module, and display a storage capacity consumption indicator associated with each group indicator, the storage capacity consumption indicator visually illustrating a relative amount of the storage capacity consumption amount associated with the zero or more items associated with the group represented by the group indicator.
18. The system (101) according to claim 17, further comprising: an item manipulation module (160) responsive to the user interface module, the item manipulation module configured to receive a user selection of a particular item associated with a particular group, and to facilitate user manipulation of the particular item.
19. The system (101) according to claim 17, wherein the user interface module is further configured to visually display a remaining storage capacity indicator graphically illustrating the amount of the storage capacity remaining for consumption.
20. The system (101) according to claim 18, wherein the system is associated with a client-based product or a network-based product.
PCT/US2008/062817 2007-05-15 2008-05-07 Interactive storage meter for a storage container WO2008144226A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/803,655 US7788297B2 (en) 2007-05-15 2007-05-15 Interactive storage meter for a storage container
US11/803,655 2007-05-15

Publications (1)

Publication Number Publication Date
WO2008144226A1 true WO2008144226A1 (en) 2008-11-27

Family

ID=40028622

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2008/062817 WO2008144226A1 (en) 2007-05-15 2008-05-07 Interactive storage meter for a storage container

Country Status (2)

Country Link
US (1) US7788297B2 (en)
WO (1) WO2008144226A1 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8788614B2 (en) * 2007-05-07 2014-07-22 At&T Intellectual Property I, L.P. Methods, devices, systems, and computer program products for managing and delivering media content
US8671210B2 (en) 2007-05-07 2014-03-11 At&T Intellectual Property I, L.P. Methods, devices, systems, and computer program products for managing and delivering a live media stream
US8788497B2 (en) * 2008-09-15 2014-07-22 Microsoft Corporation Automated criterion-based grouping and presenting
CN102902499B (en) * 2012-08-22 2015-06-03 华为技术有限公司 Partition display method and device of storage device
US9457949B1 (en) 2013-10-18 2016-10-04 William S. Hathaway, III Personalized identification system for deceased bodies

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5018060A (en) * 1989-01-26 1991-05-21 Ibm Corporation Allocating data storage space of peripheral data storage devices using implied allocation based on user parameters
JPH05274152A (en) * 1992-03-27 1993-10-22 Hitachi Ltd Object management system
JPH06161836A (en) * 1992-11-25 1994-06-10 Hitachi Ltd Area managing system for storage medium

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU3969093A (en) * 1992-04-30 1993-11-29 Apple Computer, Inc. Method and apparatus for organizing information in a computer system
US5873097A (en) * 1993-05-12 1999-02-16 Apple Computer, Inc. Update mechanism for computer storage container manager
JP3037874B2 (en) * 1994-04-29 2000-05-08 インターナショナル・ビジネス・マシーンズ・コーポレイション Library management system and method
US6401183B1 (en) * 1999-04-01 2002-06-04 Flash Vos, Inc. System and method for operating system independent storage management
US6725228B1 (en) * 2000-10-31 2004-04-20 David Morley Clark System for managing and organizing stored electronic messages
JP2003067306A (en) * 2001-08-24 2003-03-07 Hitachi Ltd Storage management method for electronic mail
US7627552B2 (en) * 2003-03-27 2009-12-01 Microsoft Corporation System and method for filtering and organizing items based on common elements
US7769794B2 (en) * 2003-03-24 2010-08-03 Microsoft Corporation User interface for a file system shell
US7444598B2 (en) * 2003-06-30 2008-10-28 Microsoft Corporation Exploded views for providing rich regularized geometric transformations and interaction models on content for viewing, previewing, and interacting with documents, projects, and tasks
US20050138072A1 (en) * 2003-12-22 2005-06-23 International Business Machines Corporation Hierarchical groups
US7353358B1 (en) * 2004-06-30 2008-04-01 Emc Corporation System and methods for reporting storage utilization
US20060041587A1 (en) * 2004-08-18 2006-02-23 International Business Machines Corporation Disk quota management with limits classes
US20060095705A1 (en) * 2004-10-30 2006-05-04 James Wichelman Systems and methods for data storage management
US7840755B2 (en) * 2005-05-24 2010-11-23 Lsi Corporation Methods and systems for automatically identifying a modification to a storage array

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5018060A (en) * 1989-01-26 1991-05-21 Ibm Corporation Allocating data storage space of peripheral data storage devices using implied allocation based on user parameters
JPH05274152A (en) * 1992-03-27 1993-10-22 Hitachi Ltd Object management system
JPH06161836A (en) * 1992-11-25 1994-06-10 Hitachi Ltd Area managing system for storage medium

Also Published As

Publication number Publication date
US20080288562A1 (en) 2008-11-20
US7788297B2 (en) 2010-08-31

Similar Documents

Publication Publication Date Title
US11740913B2 (en) Method and user interface for data mapping
US9342217B2 (en) Concentric hierarchical list browser
US6519584B1 (en) Dynamic display advertising
CN101223497B (en) Method for applying rich drag drop user interface
US20150106748A1 (en) Document exploration, analysis, and collaboration techniques
US20140214495A1 (en) Business intelligence systems and methods
US20140173501A1 (en) Device, Method and User Interface for Presenting Analytic Data
US20120060126A1 (en) Sparse dynamic selection trees
US20090327904A1 (en) Presenting dynamic folders
US20110055751A1 (en) Interactive User Interface with Tabs
US9684877B2 (en) System and method for improved consumption models for analytics
CN104885048A (en) System and method for managing digital content items
US8041125B2 (en) Data visualization device and method
US20060224998A1 (en) Multi-dimensional systems and controls
WO2014089460A2 (en) Device, method and user interface for presenting analytic data
US20170131872A1 (en) Mobile User Interface
GB2511018A (en) Data display device, data display method and program
US7788297B2 (en) Interactive storage meter for a storage container
EP2711878A1 (en) Analyzing and displaying multidimensional data
US11893224B2 (en) Browsing hierarchical datasets
US9268848B2 (en) Semantic navigation through object collections
WO2018204102A1 (en) Stowing and unstowing browser tabs in groups each corresponding to a different subject
US20140279255A1 (en) System and method for layered visualization of points of interest data
JP6270263B2 (en) Information management system and information processing apparatus
US20160239164A1 (en) Context-based control of property surfacing

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 08747740

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 08747740

Country of ref document: EP

Kind code of ref document: A1