Computers are pervasive in modern life. When users perform transactions, they usually do not limit their access to their own computers. Instead, the users tend to access systems distributed globally across networks with heterogeneous technology and support systems. Further, legacy systems integrate with modern systems creating new challenges in building systems that are flexible. Heterogeneity challenge is the challenge involved in developing flexible systems that work well in different technological background.
Ref - Software Engineering, Ian Sommerville, 7th Ed, Addison Wesley
Chat with our AI personalities
Its a challenge of developing techniques for building dependable software that is flexible enough to cope with the changing customer's requirements in the future.
heterogeneity challenge: aka being able to use older software on newer operating systems .it is often necessary to integrate new software with older legacy systems written in diff programming languages . delivery challenge: making it small to be albe to transfer fast to the clients trust challenge: aka basically being able to trust the software being used by the users
The trust challenge is to develop techniques that demostrate that ,the software can be trusted by its user
The product of software engineering is software.
To help you get an idea of the kind of jobs in software engineering, I took a quick look at online job listings for software engineering. The types of job titles that showed up were Software Engineering Technician, Software Engineering Programmer, Software Engineering Manager, Software Engineering Director, and Technical Writer in Software Engineering.
IEEE gives software engineering definition as :-. The application of a systematic , disciplined quantifiable approach to the development, operation and maintenance of software that is the application of engineering to software.