Thursday, March 20, 2008

Software Engineering

There is not one "magic" formula for building good software because different types of projects require completely different software engineering strategies. For example, in a professional development setting, most requirements are known up front; the design and testing of the project can be driven by requirements. However, software development in a research lab is a completely different experience. Requirements might change every day as new discoveries are made and new questions considered. Finally, open source development is another breed of software where coding happens by hundreds or thousands of developers; it is a constant struggle for simplicity! In each type of software development, different software engineering principles apply, but the different strategies are fundamentally too different to all follow the same principles.

No comments: