Chapter 2 Additional Reading - Software Product Lifecycle PDF

Document Details

CommendableLightYear

Uploaded by CommendableLightYear

Tata Consultancy Services

Tags

software engineering lifecycle software development product engineering Tata Consultancy Services

Summary

This document provides an overview of the software product engineering lifecycle, covering various stages and methodologies. It details the roles and responsibilities within the product delivery team, including product management, project management, and product development, as well as SCM and release or operations. Different phases like planning, development, and release are highlighted.

Full Transcript

Chapter – 2 Additional Reading – software product engineering lifecycle Certificate in Software Product Engineering Page 1 of 14 Confidentiality Statement This document should not be carried outside the physical and virtual boundaries of TCS and its client work locations. Sharing this document with...

Chapter – 2 Additional Reading – software product engineering lifecycle Certificate in Software Product Engineering Page 1 of 14 Confidentiality Statement This document should not be carried outside the physical and virtual boundaries of TCS and its client work locations. Sharing this document with any person other than a TCS associate would tantamount to violation of confidentiality agreement signed by you while joining TCS. Notice The information given in this course material is merely for reference. Certain third party terminologies or matter that may be appearing in the course are used only for contextual identification and explanation, without an intention to infringe. Contents Chapter – 2 Additional Reading – Software Product Engineering Lifecycle...........................4 2.1 Product Team Structure........................................................................................ 5 2.2 Roles and Responsibilities......................................................................................6 2.3 Product Strategy...................................................................................................6 2.4 Product Delivery Team.......................................................................................... 7 2.4.1 Product Management.................................................................................... 7 2.4.2 Project Management.....................................................................................8 2.4.3 Product Development.........................................................................................9 2.4.4 Product Quality Assurance........................................................................... 10 2.4.5 SCM and Build Engineering.......................................................................... 12 2.4.6 Release or Operations:.................................................................................. 13 Page 3 of 14 Chapter – 2 Additional Reading – Software Product Engineering Lifecycle Introduction Software product engineering lifecycle e presents a comprehensive overview of software development process, various stages of product lifecycle with varied organization structure. Details of various SDLC methodologies which are classified as traditional methodologies and agile methodologies and also list out the advantages and disadvantages of each methodology used. Learning Objective After reading this chapter, you will be able to understand: What is product team structure Roles and responsibilities of Product team Product strategies Page 4 of 14 2.1 Product Team Structure The dual reporting relationships of a matrix structure have always been difficult for managers and employees to deal with. To avoid these problems, managers have devised another way of organizing people and resources: a product team structure. The product team structure differs from a matrix in that: 1) it does away with dual reporting relationships and two-boss managers, and 2) functional employees are permanently assigned to a cross-functional team. A cross-functional team is a group of managers brought together from different departments to perform organizational tasks. They report only to the product team manager. Increasingly, organizations are making empowered cross-functional teams an essential part of their organizational architecture to help them gain a competitive advantage in fast-changing organizational environments. Page 5 of 14 2.2 Roles and Responsibilities Figure 1: Product team roles and responsibilities 2.3 Product Strategy Roles: VP Engineering, VP Marketing, VP Finance, Development Director, Test Director Responsibilities: Envision Phase: Review product strategies and product roadmaps Opportunity assessments for product Review product prototype, user testing results Review cost estimates Go/no-go decision to begin engineering Page 6 of 14 Final Release Phase: Review final product Release plans Go/no-go decision to release Product Delivery Team 2.4 2.4.1 Product Management Roles: Product Manager, Product Owner, Product Marketing Manager, Business Analyst Responsibilities: Envision Phase: Product vision document Product strategies and product roadmap Product prototype planning Customer and Market Segmentation (Competitive Analysis) Requirement gathering Value proposition Positioning Business case Go-to-market planning Pricing/licensing Cross-functional coordination Complete engineering life cycle phases: Track and create product backlog for software feature requests Feature/bug triage and prioritization Page 7 of 14 Product release planning Prepare business case for complex feature requirements Research and analysis for end user needs and expectations to define feature Review use cases, functional specifications, and test plans for features Perform acceptance and ad-hoc functional testing Conduct or coordinate usability testing and focus groups Monitor and review the progress of software engineering, QA, and documentation Product coordination for sales, marketing, and service teams 2.4.2 Project Management Roles: Project Manager, Program Manager, Scrum Master Responsibilities: Planning Phase: Milestone planning Feature specification Participates in milestone release planning, triage Complete engineering life cycle phases: Feature Specification Progress Monitoring, Tracking Reporting Coordination between various teams such as development, QA, Coordination with DevOps, Release and Operations team Page 8 of 14 2.4.3 Product Development Roles: Architect, Developer Lead, UI Designer, Module Lead, Developer Responsibilities: Envision Phase: Prototype development Planning Phase: Platform evaluation Deployment scenario selection Technical feasibility analysis Limitations Development phase: Technical specification Design specification UI specification Code Unit testing Code quality API & code documentation Bug fixing Code instrumentation Globalisation Code for multiple SKU Page 9 of 14 Code documentation Release phase: 2.4.4 Release support Product Quality Assurance Roles: Test Manager, Test Leads, Testers Responsibilities: Planning Phase: Requirement analysis Test planning Test Strategy Release Planning Development and QA Phase: Test design Test case development Test data generation API testing methodology Test coverage/Code coverage Test reporting (Metrics) Test automation Test case selection Test environment setup Page 10 of 14 Test case execution(functional and non-functional test pass) Traceability matrix Regressions Test Pass Test reporting Test signoff Smoke testing Milestone test pass (Alpha/Beta/RC etc.) Development phase: Technical specification Design specification UI specification Code Unit testing Code quality API & code documentation Bug fixing Code instrumentation Globalisation Code for multiple SKU Code documentation Page 11 of 14 Release phase: 2.4.5 Release support SCM and Build Engineering Roles: Build Engineer Responsibilities: Development to Release Phase: Code Repository Maintenance (Branching, Merging) Code Quality Management(Tooling) Build Management and Automation Automated tests (build self-testing) Deploy and test in a clone of the production environment Automate Deployment Reporting Build Management Build Versioning Build Lab setup Build Types Pseudo Build Code coverage build Beta, Alpha and Release builds Build Reporting Page 12 of 14 Localized build Build automation 2.4.6 Release or Operations: Roles: Release Manager and Operation Responsibilities: Release Phase: Build the Release Package Perform Acceptance Test of the Release Package Deploy the Release Package at distribution location Review the Changes Page 13 of 14 Page 14 of 14

Use Quizgecko on...
Browser
Browser