1. New product development Initiative:
The management has decided to launch a new product
1. With multiple features
2. To cater the various clients expectations
3. Usage of new technology
4. Re-use existing in-house technologies
2. New team creation :
The product is creating new device “X” and take to the market. With out going into much detail the team is formed by picking the experts from different verticals (project departments).Different departments were created to under a product manager /Program Manager
1. Project Managers
3. Embedded Development team (Operating systems, Boot loader, Application development
Testing Team, Quality team)
4. Mechanical & Plastics
5. Special Technology
6. Process consultants
8. Project Management office
9. Product Launch & documentation teams
As this project will have a team of PMs to each of the areas. All this PM’s will be reporting to Program Manager.
The main challenge is to decide the technology and software process to create the product. Also greater challenge in deciding the mechanical/housing/plastics required.
3. Key areas to concentrate :
Create a right process, methods, reporting mechanism and test process.
4. Architecture & Developmental area :
Most of the decision factor of the product timelines of the product release is based on this.
In this phase you must decide whether it is in house-build/outsourcing/Buy, utilize existing product lines.
At no point of do-reinvent the wheel, if the off-the-shelf software/hardware is available utilize it.
(When we are building the Microsoft windows CE based device, our V.P mentioned us this is better way, as we have to pay one vendor royalty unlike “DOS based devices”. In DOS based we have to integrate from “n” vendors)
Also stay away from “free OS”, where no support is available, unless you have team who are experts.
Embedded Systems/OS: Based on the product we are building we need to come up with best OS (Operating Systems) (Linux, Unix, Windriver, Microsoft”
-> This is more like your selection of the house/Apartment you are going to buy.
-> Identify what are features will be supported by the OS
-> OS selection will be different for the “vending machine”, “Nuclear Rector”, “Hospital equipment”
-> If this product as “10 features”, select the OS, which meets the 90% features.
-> Select the OS which can support the internationalization, local requirements.
-> Select OS which the team/firm has experience.
5. Incremental development and QA/QC& area :
Selection of the models/development, developmental boards and methodology to support the staged development.
-> This is just like; you construct ground floor, second floor, and third floor with proper suitable basement.
-> Build lot of debug/test fixtures to test the system
-> Migration of software/hardware must be incremental
6. Agile, Lean development, TDD (Test During design) :
This is must to get the product out the door faster
7. Planned daily builds and release cycles
Development and testing must continue daily, and bugs are fixed, reported. Also need to come up with release plans.
8. Project, Program , PMO, Delivery
Proper management team to track, co-ordinate and report the status.
Just after kick-starting to project, and after knowing the requirements, after proper “requirement tracking”, training to be organized. The whole team must be involved in training this include senior management, who can help to change and understand time lines.
10. Pre-validation testing
This is stage where the basic sequence is created with dummy functionalities and hooks. Here you must decide if we need to change the architecture and design
11. Proper Team section
Every team members must be evaluated and placed in the suitable slots. Never have “researchers” in quality and development. Always have different PMs for the development, quality and test teams. Strong “delivery/release Manager” must be in the team. Keep the teams rotated, and also have proper backup/documentation
12.Development and test ratio
Always have proper ratio, team must be rotated to keep the tempo
If you are “outsourcing”, have proper tracking and choose one/two managers/ partners at the development site.
14. Collate the teams
Make sure all the teams are at one location