learn more...A software development process is a well-thought structure imposed on the development of computer software product. Its industry synonym is software life cycle. There are several models available in market, each describing approaches to a variety of activities that take place during the development process. Iterative processes Iterative development describes the construction of initially small but ever larger portions of a software development project to help all stake holders involved to uncover important issues early before problems or flawed assumptions can lead to disaster. Iterative model is preferred by commercial software developers because this model has a potential to meet the design goals of the customer who fails to explain or define what they want. Agile process Agile software development process is built on the base of iterative development. To that base engineers add a lighter, more user-centric viewpoint than conventional approaches. Agile processes use constant feedback, rather than planning, as their primary process control mechanism. The feedback is driven by regular checks and releases of the evolving software product. Extreme programming: XP XP or Extreme Programming is the most popular iterative process. In XP, the processes are carried out in extremely small steps compared to the batch (older version of the model) processes. First, developer writes automated tests to provide concrete development goals. Next is programming. When all tests pass and the programmers can't think of any more tests that are needed, design and architecture emerge out of refactoring. The incomplete functional system is deployed for selected set of the users and at this point, the practitioners start again on writing tests for each module. Waterfall processes In waterfall model developers follow following steps: 1. Customer requirements specification 2. Software Design 3. Implementation 4. Integration 5. Testing and validation 6. Deployment 7. Maintenance After one of the above steps is finished, the project proceeds to the next step, just as builders don't revise the foundation or base of a house after the framing has been erected. This approach is used in really high risk projects. The problems in waterfall process do not arise from inaccurate engineering practices, particularly in requirements analysis and management. Often the proposed stages become part of review between client and developer; the developer can, in fact, develop at risk and evolve the design but must sell off the design at a critical milestone called Critical Design Review or CDR. Other popular industry models are Capability Maturity Model Integration (CMMI), ISO 9000, ISO 15504, Six sigma and Test Driven Development (TDD) which will be covered in my next post. This article is courtesy of HiTech IT Outsourcing, a leading offshore software and website development company based in India with clients across USA, UK, Canada and Australia. For more information about software development outsourcing process email us at info@hitechito.com or visit http://www.hitechito.com
|
||||||
Disclaimer
1) E-articles is not responsible for the information contained by this article as well for any and all copyright infringements by authors and writers. E-articles is a free information resource. If you suspect this article for any copyright infringement, please read the terms of service and contact us to investigate the problem.
2) E-articles is not responsible for inaccuracies, falsehoods, or any other types of misinformation this article may contain and will not be liable for any loss or damage suffered by a user through the user's reliance on the information gained here. link to this article |