|
Zensar product development practice has evolved over a period of time and is being enriched by the experience that it has gathered from execution of product developments for different customers. A summary of our lessons learnt is provided below.
Knowledge Transfer and Team Structure: The product development scenario is different from normal aplpication software development. It is governed by aggressive time schedules due to time to market pressures. Knowledge Transfer is the key for meeting the aggressive time schedules. Zensar has fine - tuned its approach by ensuring the right team mix comprising of domain and technical expertise for knowledge transfer. Our domain experts have industry background with hands on experience in the operational issues in a particular domain.
Distribution of domain experts to development, support and testing team: As a strategy we ensure that the team leads of each of the teams are part of the knowledge transfer phase. This ensures smooth co-ordination during the actual development phases as each team has at least one domain expertise available.
Effective Communication: Our teams talk to your teams on a daily basis. Zensar maintains a repository for each product related project, which captures all the communications, the decisions and the reasons for decisions taken during the development phase. This repository is available to the entire team to refer to as and when required, so that knowledge is shared across the team.
Right mindset: We understand that product development requires domain and technical experts that have a product development mindset. This mindset is with regard to approach for product development, starting from capturing requirements, to designing systems to testing of the product. We ensure this by maintaining a separate pool of resources dedicated to product development. These resources are trained to venture into new technologies, come out with alternative solutions, and debate on different options before taking any decisions. Regular reviews are planned for each phase of development.
Aggressive delivery Schedules: The product development scenario is one governed by multiple releases, prototypes and aggressive delivery schedules. Aggressive time schedules imply higher team size, high ramp up requirements and hence requirements for efficient project management to maintain schedules. We have met extremely ambitiuous schedules by ensuring the right span of control, having multiple teams with leads coordinating with project and program managers. Ramp up requirements are taken care by maintaining a buffer resource pool readily available for the increasing team size on an ad-hoc basis where required.
Multiple Releases: Product development implies multiple deliveries staggered over a short time span. Zensar ensures multiple deliveries by using the iterative development approach. This approach allows for early identification of risk and provides better control on change management. The iterative approach also helps in accommodating changes at frequent intervals. The design methodology adopted uses solution and design patterns, and focuses on making architecture flexible, scalable and configurable. The development approach is more towards generalization than actual hard coding. The stress is on building reusable components with loose coupling as required. Where needed, we are open to following your approaches for the same.
Localization: Often, product development is characterized by localization requirements with regard to language and currency, business rules and interfacing requirements with regard to hardware, software and applications. Zensar’s design methodology makes provisions to accommodate the above requirement by suggesting proper choice of technology, deploying solutions across multiple platforms and checking for performance requirements. The components designed are configurable, and are not tightly coupled to any vendor supplied hardware or software. Moreover the product implementations consider the local requirement with regard to UI standards, language, and currency requirements.
QA/Testing: QA/Testing is one of the most critical functionality in product development scenario. Domain experts from Zensar prepare test scenarios with regard to business, technical and hardware requirement. The systems are tested thoroughly for functional and load testing. Use of testing tools and test scripts helps in better testing and reuse of testing scripts and tool can be done for future testing.
Traceability: Requirements are bound to evolve with time in any product scenario and it is imperative to maintain a traceability of customer communication with regard to requirements, design, source code and testing. Use of configuration management tools ensures that the traceability is maintained. The configuration management repository is also used to maintain the build releases. We employ UML based traceability techniques using our own tool where required.
|