|
SW Projects - Roadmap
from specified features to implementation details
SW Projects - Roadmap
Definition of the SW project Understanding the needs of the customer and make it clear specifications and system requirements, is the crucial first step.
We should try to estimate realistically (time, cost and working methods) for the realization of future system. We should define necessary human and technological resources.
Customers sometimes have only a vague idea of what may be required for certain features to cost. For this once communicated clearly the costs, you can readjust the features specification, and get a second, more contained, project definition with the budget acceptable to the customer.
Why plan? Before talking why planning is often ignored, it is important to discuss why it is needed in SW projects. In short, the planning serves to: * Define and manage project scope - Requirements specification * Establish the detailed technical requirements, including the interfaces to people, to machines, and to other software systems - Design * Sw architecture and interchangeable, interoperable compartmentalised software components - Design * Identify and minimize risks to the project - Design * Securing the necessary resources: expert team with the right skill set, time allocation for different development tasks, cash flow - Planning * Establish the sequence of realistic goals - Roadmap * Separate the project into phases and activities clearly manageable - Roadmap * Assess the time allocated to the project in stages of development - Roadmap * Keep track of your progress and monitor the project - Roadmap
These points apply to web projects of all shapes and sizes. Not being able to satisfy all of these points at all stages of any project, often can compromise the success of the project.
Linux, Chrome and Mozilla are examples of good planning and fine management.The incremental development model, with rapid iterations can deliver satisfactory software solutions. It is good to start with small working code, and carefully extend it with new features. Problem solving deals with finding out what is the problem and then figuring out different alternative ways to fix the problem. While developing an improved solution, often the greatest technological innovations are created. All with a small increments. It is good to have in your project: - Well defined modular architecture. - Compartimentalised software components with clearly defined interfaces.
"According to program manager Anthony Laforge, the increased pace is designed to address three main goals: - One is to get new features out to users faster. - The second is make the release schedule predictable and therefore easier to plan which features will be included and which features will be targeted for later releases. - Third, and most counterintuitive, is to cut the level of stress for Chrome developers.
Release is like a predictable train and features like wagons added when ready and not before. Laforge explains that the shorter, predictable time periods between releases are more like “trains leaving Grand Central Station.” New features that are ready don’t have to wait for others that are taking longer to complete—they can just hop on the current release “train.” This can in turn take the pressure off developers to rush to get other features done, since another release train will be coming in six weeks. And they can rest easy knowing their work isn’t holding the train from leaving the station."
|
|