Template Version: @(#)onepager.txt 1.35 07/11/07 SMI Copyright 2007 Sun Microsystems 1. Introduction 1.1. Project/Component Working Name: Command Assistant 1.2. Name of Document Author/Supplier: Jeffrey Chen(pu.chen@sun.com) 1.3. Date of This Document: March 03, 2009 1.3.1. Date this project was conceived: Oct 27, 2008 1.4. Name of Major Document Customer(s)/Consumer(s): 1.4.1. The PAC or CPT you expect to review your project: G11N GTO 1.4.2. The ARC(s) you expect to review your project: PSARC 1.4.3. The Director/VP who is "Sponsoring" this project: Shripad.Patki@Sun.COM 1.4.4. The name of your business unit: Software/GPD/Globalization 1.5. Email Aliases: 1.5.1. Responsible Manager: Shinobu.Matsuzuka@Sun.COM 1.5.2. Responsible Engineer: pu.chen@sun.com 1.5.3. Marketing Manager: 1.5.4. Interest List: indiana-g11n@sun.com 2. Project Summary 2.1. Project Description: The project information is available at: http://wikis.sun.com/display/CmdAssist/Home Command Assistant provides easy access to examples showing the usage of OpenSolaris command-line applications. The examples are taken from existing OpenSolaris sgml documentations, man-pages and eventually javadoc documentation. Command Assistant provides a text field to enter search terms. Search requests are transmitted to a server that returns results as a URL with limited context information similar to popular search engines. The returned results are shown in a widget. Clicking on the individual search result opens a browser window that shows the full result within the html version of the document where result was extracted from. 2.2. Risks and Assumptions: n/a 3. Business Summary By providing this client to OpenSolaris users, we can offer an easy access to specific information. For example, when a user is trying to figure out how to use "zpool" command, he/she can find the exact use of zpool command examples in the document with a few mouse clicks from the desktop. This would allow users better and easier way of learning OpenSolaris technology, hence contributing to OpenSolaris adoption. 3.1. Problem Area: OpenSolaris has great technology. OpenSolaris has better set of documentation than Linux distributions in general. However, the information access is not always straightforward. 3.2. Market/Requester: OpenSolaris end users. 3.3. Business Justification: 3.4. Competitive Analysis: 3.5. Opportunity Window/Exposure: 3.6. How will you know when you are done?: * Delopy Web Service to OpenSolaris.com * Ship Command Assistant with OpenSolaris/put it into package repository. 4. Technical Description: 4.1. Details: Feature Description --------------------------------------------------------------------- Solaris Command Search User can search Solaris Commands Reverse Matching Search concept/topic to commands Context Provide short description for each search result Multi-language support User can search documents in specific languages Classified information Search results are customized to different categories Manpage Search the Solaris manpages Javadoc Search the Javadoc ------------ Interact ------------- --------------- | Client APP | <==========> | Web Service | ----> | Lucene Engine | ------------ ------------- --------------- | | | --------------- | -------------------- ---> | Command Index | --->| Lucene Index Files | --------------- -------------------- Client Application GTK based GUI application. It interacts with server to get results. Server side Java based Web Service. It bases on Lucene engine to provides matching functions. Command Assistant has the ability to parse the meta-information in the documentation, it "knows", * which is "command" * which is "command descriptions" * which is "examples of command" * .... Html documents published on docs.sun.com were generated from SGML provided by IPG. Compare to the final html file, SGML provides a much richer set of informations. Please see the SGML segment below for an example: -------------------------------------------------------- Creating a Mirrored Storage Pool To create a mirrored pool, use the mirror keyword,followed by any number of storage devices that will comprise the mirror. Multiple mirrors can be specified by repeating the mirror keyword on the command line. The following command creates a pool with two, two-way mirrors: # zpool create tank mirror c1d0 c2d0 mirror c3d0 c4d0 Capacity and reads can be monitored by using the zpool iostat ------------------------------------------------------- Command Assistan uses "userinput" and "command" to find examples. It also evaluates the "title" to provide context information, The index files used by Lucene will be generated by automated scripts, and then will be uploaded to OpenSolaris.com. Command Assistant will be implemented as a standard gnome applet. 4.2. Bug/RFE Number(s): 4.3. In Scope: (Open)Solaris documentation in solbook format. 4.4. Out of Scope: 4.5. Interfaces: The description of the webservice will be available here: http://www.opensolaris.com/commandassistant/service?wsdl 4.6. Doc Impact: 4.7. Admin/Config Impact: 4.8. HA Impact: 4.9. I18N/L10N Impact: The client application is i18ned, and it supports multi-languages. 4.10. Packaging & Delivery: CLIENT SIDE COMPONENTS VERSION LICENSE TERMS ----------------------------------------------------------- Assistant Tool Client 1.0.0 CDDL package name: SUNWcmdassist The client side components will be shipped with OpenSolaris in OpenSolaris package repository. It's a standard Gnome Applet. * /usr/lib/bonobo/server/CommandAssistant_Applet.server * /usr/lib/CommandAssistant/commandassistant-applet * /usr/lib/CommandAssistant/config.xml SERVER SIDE COMPONENTS VERSION LICENSE TERMS ----------------------------------------------------------- Assistant Tool Web Service 1.0.0 CDDL Apache Lucene 2.4.0 2.4.0 Apache LicenseV2.0 Server side components will be hosted on OpenSolaris.com. They will be delivered as a webservice archive: CommandAssistantWebService.war 4.11. Security Impact: None 4.12. Dependencies: None 5. Reference Documents: http://wikis.sun.com/display/CmdAssist/Home 6. Resources and Schedule: 6.1. Projected Availability: 2009Q3 6.2. Cost of Effort: Design: 2 person weeks Development/Testing/Bug Fixes: 10 person weeks Deployment: 1 person week 6.3. Cost of Capital Resources: 6.4. Product Approval Committee requested information: 6.4.1. Consolidation or Component Name: 6.4.3. Type of CPT Review and Approval expected: Full Review 6.4.4. Project Boundary Conditions: http://wikis.sun.com/display/CmdAssist/Home 6.4.5. Is this a necessary project for OEM agreements: No 6.4.6. Notes: 6.4.7. Target RTI Date/Release: OpenSolaris 2009 June release 6.4.8. Target Code Design Review Date: Mar, 2009 6.4.9. Update approval addition: 6.5. ARC review type: FastTrack 6.6. ARC Exposure: open. Open Source Outbund Review Case ID #10383. 6.6.1. Rationale: 7. Prototype Availability: 7.1. Prototype Availability: YES 7.2. Prototype Cost: 3 person weeks