What is software Engineering

(Khawar Hafeez Paracha, Rawalpindi)

What is software Engineering

It is an engineering discipline.it is concerned with all the different aspects of software production from the early stages to the last stage of the software development. The developers apply different theories, methods and tools where these are suitable in the process of making software. They provide the different solution for the problems with in the organizational and financial constraints .software engineering is not only concerned with technical steps of software development but also concerned project management of product and also the tools which are used for development. The developer adopts a systematic and organized approach for their work to produce the quality product.

software engineering

Difference Between software engineering and computer science
Computer science concerned with the theories, method that underlie computers and software systems. While software engineering is concerned with the practical problems of the whole development process .From above definition it is clear that these both are interconnected with each other. Some knowledge of computer science is essential for software engineering for example physics is essential for electrical engineers.

Difference Between software engineering and system engineering
Now as we all know that software engineering is concerned with the development and evolution of software. While system engineering is concerned with different hardware development . System engineer role is to specifying the system, defining its overall architecture and integrating of different parts to create the final system.
What are the key challenges facing software engineering
there are three key challenges
1. The heterogeneity challenge is increasingly because now days systems are operate on many networks (distributed networks). So it is necessary to integrate new software (product) with the older systems which are in different languages. Heterogeneity is the challenge of developing product that is flexible enough to cope with the heterogeneity.
2. The delivery challenge means software engineering take time for producing quality product .But today business change very rapidly so the software also change rapidly to meet the business requirements.so we conclude that delivery challenge is the challenge of shortening delivery times for large and complex system without compromise on the quality of the system.
3. The trust challenge is, to develop technique that demonstrate that product can be trusted By its user.

Khawar Hafeez Paracha
About the Author: Khawar Hafeez Paracha Read More Articles by Khawar Hafeez Paracha: 11 Articles with 12814 views Chief Executive Officer at Skills Online Rawalpindi.. View More