【正文】
y new software development technologies have arisen. Newly developed practices and models do not attempt to separate phases of software development, such as specification and implementation, but instead focus on the concept of program transformation through stepwise refinement and iteration. 1 、 ObjectO r ien ted Technology ObjectOriented (OO) software design technology is fundamentally different from the traditional methods described above. With traditional methods, each module is recognized a major step in the overall process and the process goes from one step to the next. On the other hand, OO design is structured around a model of objects and the functions they perform. OO programming can be traced to the simulation language SIMULA, a high level language developed in the late 6039。 1 中文 2780 字 外文資料原文 Software Development Concepts and Design Methodologies During the 1960s, mainframes and higher level programming langua ges were applied to many problems includ ing human resource systems, reservation systems, and manufacturin g systems. Computers and software were seen as the cure all for many business issues were sometimes applied blind ly. Systems sometimes failed to solve the problem for which they were designed for many reasons including: ?Inability to sufficiently understand plex problems ?Not sufficiently taking into account end user needs, the anizationa l environment, and performance tradeoffs ?Inability to accurately estimate development time and operational costs ?Lack of framework for consistent and regular customer munications At this time, the concept of structured programming, top down design, stepwise refinement, and modular ity emerged. Structured programming is stil l the most dominant approach to software engineering and is still evolvin g. These failures led to the concept of software engineering based upon the idea that an engineering like discip line could be applied to software design and development. Software design is a process where the software designer applies techniques and princip les to produce a conceptual model that describes and defines a solut ion to a problem. In the beginning, this design process has not been well structured and the model does not always accurately represent the problem of software development. However, design methodologies have been evolv ing to acmodate changes in technology coupled with our increased understanding of development processes. Whereas early design methods addressed specific aspects of the development process, current methods attempt to address the entire scope of 2 software dev elopment. Software design methods are often classified in reference to the period in which they were introduced and the problems at that time. Driven by coding and testing problems, tools and methods were developed. Early methods focused on modularity and to