Content area
Full Text
Abstract - Development of science-intensive software products is a complex and time-consuming process that requires good management and coordinated teamwork of all members, involved in the development. Each complex software product has a number of special features; as well as each development team has some unique capabilities. In such conditions it is not always possible to apply standard methods of software engineering without adapting to the specific case. In this paper, we present a development process of largescale CAD/CAE systems for investigation of electromagnetic compatibility issues.
Keywords: Software Development, Software Engineering, CAD Systems, CAE Systems, Development Process
1. Introduction
For many years, software engineering has been continuously evolving and providing solutions to improve practices of software development. Many different methods and approaches have been invented to overcome difficulties, arising during software development process. Some of them have been standardized as typical software engineering techniques.
All of these standards and approaches, like waterfall model[1], agile methods[2] and extreme programming[3], have shown their benefits and disadvantages when applied to specific situations. Despite the fact, that each approach offers a fairly clear advice and guidance, the practice shows that quite often these rules cannot be applied without some modifications and adaptations to specific processes.
This happens due to many factors. Among main reasons that can be identified, one of the most important is, for example, the nature of the product being developed. Development process of science-intensive programs, that perform complex calculations and simulations, differs from developing a client/server application, creating website or online store. Also, structure and members of development team have a major impact on the process, because team consists of people with different characters, skills and experience. Success of the development largely depends on how harmoniously and professionally team members cooperate.
These and other factors must be considered when choosing and applying a particular approach to a specific software development process. If necessary, selected approach must be optimized and adapted according to the known recommendations, or by introducing new recommendations, based on existing experience.
2. CAD/CAE system description
As new technologies appear, penetrating all spheres of human activity, need for high quality scientific software grows. Today's scientific software products are sophisticated CAD/CAE systems for simulation, visualization and analysis of real world objects and processes. A...