- Software product management
A software product is typically a single application or suite of applications built by a software company to be used by *many* customers, businesses or consumers. The mass-market notion differs from custom software built for the use of a single customer by consulting firms like
IBM Global Servicesor Accenture.
Examples of consumer software products include
Microsoft Officeby Microsoft, TurboTax by Intuit. Since the late 1990s, many software products have been offered as a service, so that the customers - businesses or end consumers - run the same application without installing the software on their computers. Examples include Customer Relationship Management (CRM) software by Salesforce.com, consumer shopping comparison software by Shopping.com, various web search tools offered by Google, Yahoo!, and the auction marketplace by eBay. Even though these applications are not packaged in media that can be touched and felt, they are software products nonetheless, and require the same product management rigor as packaged software do. In fact, they do require more rigor since the product manager's planning must now include operational concerns such as service availability.
The need for software product management
To develop, sell and support a successful software product a business needs to understand its market, identify the opportunity, develop and market an appropriate piece of software. Hence the need for
product managementas a core business function in software companies.
Hardware companies also have a need for software product management, since frequently
operating systemsoftware needs to be installed on computer hardware before the hardware can be functional, and operating system software can be sold as a product separately. For example, Sun Microsystemsis a hardware company, and is in the business of manufacturing and distributing Sun workstations (hardware) and the Solaris Operating System(software). Building and delivering Solaris as a product in the marketplace requires software product management.
Management of aspects of software development
Software product management deals with the following aspects of software development within a software and/or hardware firm:
* Idea generation on whiteboards for a new software product, or for the next version of an existing product.
* Gathering of business and/or
marketrequirements from prospects, customers of earlier versions of the product, domain experts, technology visionaries, market experts, products / solutions from competing vendors, etc.
* Crafting of
Marketing Requirements Documents, or MRDs, which synthesize the requirements / needs of various stakeholders as outlined above.
* Using the MRD as a basis, come up with a
product requirements documentor PRD, as an input to the engineering team to build out the product. A PRD is also known as a functional specification. Frequently, a PRD can be a collection of UML Use Cases, UML Activity Diagrams, HTMLmockups, etc. It can have other details such as the software development environment, and the software deployment environment. For example, where as the development environment can be J2EE/ Java IDEs, the deployment environment can be the WWW (worldwide web) or the Internet.
* Deliver the PRD to the software engineering team, and manage conflicts between the business units, the sales teams, and the engineering teams, as it applies to the software products to be built out.
* Once the software development gets into build / release cycle, conduct
acceptance tests, if required by the firm / software manufacturer.
* Deal with the packaging of the product. This can vary from demonstrating the product to customers using web-based conferencing tools, to building a flash/captivate demo and deploying it on the company website, to other placement and promotion tactics. Frequently, in
Silicon Valley, these two aspects of marketing, and sometimes also pricing, are dealt with by Product Marketing Managers, as opposed to Product Managers.
* Once the product is deployed at a customer site, solicit customer feedback, report
software bugs, and pass these on back to engineering for subsequent build / release cycles, as the product stabilizes, and then matures.
* Perform competitive analysis as to how this product is behaving in the market, vis-a-vis other products catering to the same / similar customer segments. In the software space, this might require the product manager to take the opinion of analysts, who can come from name brand market research firms like IDC,
Forrester Research, and GartnerGroup.
* Solicit more features and benefits from the users of the software product, users of competitive products, and from analysts and craft / synthesize these requirements for subsequent product build / release cycles, and pass them on to the software engineering team.
The above tasks are not sequential, but can co-exist. For a product manager to be efficient in the above tasks, he has to have both engineering and marketing skills. Hence, frequently, Silicon Valley firms prefer engineers who are also
MBAs to do software product management.
Product life cycle management
*Cite book |last=Conde |first=Dan |title=Software Product Management: Managing Software Development from Idea to Product to Marketing to Sales (Execenablers) |publisher=Aspatore Books |date=2002 |isbn=1587622025
*Cite book |last=Dver |first=Alyssa S. |title=Software Product Management Essentials |publisher=Anclote Press |date=2003 |isbn=0929652010
Wikimedia Foundation. 2010.
Look at other dictionaries:
Software Asset Management — (SAM) is a business practice that involves managing and optimizing the purchase, deployment, maintenance, utilization, and disposal of software applications within an organization. According to the Information Technology Infrastructure Library… … Wikipedia
Software Lifecycle Management — is the concept that an Independent software vendor can control how its software is licensed and used throughout its usable lifecycle. Because software is not always a static product, vendor s often add additional features and/or updates for… … Wikipedia
Software configuration management — In software engineering, software configuration management (SCM) is the task of tracking and controlling changes in the software. Configuration management practices include revision control and the establishment of baselines.SCM concerns itself… … Wikipedia
Product management — is an organizational function within a company dealing with the planning or marketing of a product or products at all stages of the product lifecycle. Product planning (in bound marketing) and product marketing (outbound marketing) are different… … Wikipedia
History of software configuration management — The history of software configuration management (SCM) in computing can be traced back as early as the 1950s, when CM (for Configuration Management), originally for hardware development and production control, was being applied to software… … Wikipedia
Software development — is the translation of a user need or marketing goal into a software product. [cite book|author=Birrell, N.D.|title=A Practical Handbook for Software Development|publisher=Cambridge University Press|year=1985|id=ISBN 0 521 25462 0] [cite… … Wikipedia
Product life cycle management — is the succession of strategies used by management as a product goes through its product life cycle. The conditions in which a product is sold changes over time and must be managed as it moves through its succession of stages. Product life… … Wikipedia
Software technical review — A software technical review is a form of peer review in which a team of qualified personnel ... examines the suitability of the software product for its intended use and identifies discrepancies from specifications and standards. Technical… … Wikipedia
Product lifecycle management — (PLM) is the process of managing the entire lifecycle of a product from its conception, through design and manufacture, to service and disposal. [cite web title = About PLM publisher = CIMdata url = http://www.cimdata.com/PLM/aboutPLM.html ] PLM… … Wikipedia
Software Lifecycle Processes — are methods and standards for improving and mastering development processes, supporting processes and management processes throughout the software lifecycle.The quest for the optimized mix of processes has resulted in different standards… … Wikipedia