Software Engineering & Information System Design
Software Engineering & Information System Design
Software Engineering & Information System Design
Objectives of course
Understand Software Engineering:
• Build complex software systems in the context of frequent change
Understand how to
• produce a high quality software system within time
• while dealing with complexity and change
Acquire technical knowledge of Software Engineering
Acquire managerial knowledge
Understand the Software Lifecycle
• Process vs Product
• Learn about different software lifecycles
Chapter 1- Introduction
Topic Covered
Software and Software Engineering
Why Software Engineering is Important
Types of Software Product
Essential attributes of good software
Software Engineering Diversity
Fundamentals applied to software
Software engineering and the Web
Software Engineering Ethics
What is Software ?
The development of the World Wide Web has had a profound effect on all
of our lives
Around 2000, the Web started to evolve and more and more functionality
was added to browsers
Instead of writing software and deploying it on users’ PCs, the software
was deployed on a web server
It is much cheaper to change and upgrade the software, as there was no
need to install the software on every PC
The next stage in the development of web-based systems was the notion
of web services
‘computing clouds’ concept is introduced i.e. web-based mail
Software Engineering Ethics
• Like other engineering disciplines, software engineering is carried out
within a social and legal framework that limits the freedom of people
working in that area
• As a software engineer, You must also behave in an ethical and morally
responsible way
• According to IEEE-CS/ ACM join taskforce software engineer should follow
eight principles:
1. PUBLIC — Software engineers shall act consistently with the public interest.
2. CLIENT AND EMPLOYER — Software engineers shall act in a manner that is in the best interests
of their client and employer consistent with the public interest.
3. PRODUCT — Software engineers shall ensure that their products and related modifications meet
the highest professional standards possible.
4. JUDGMENT — Software engineers shall maintain integrity and independence in their
professional judgment.
5. MANAGEMENT — Software engineering managers and leaders shall subscribe to and promote
an ethical approach to the management of software development and maintenance.
6. PROFESSION — Software engineers shall advance the integrity and reputation of the profession
consistent with the public interest.
7. COLLEAGUES — Software engineers shall be fair to and supportive of their colleagues.
8. SELF — Software engineers shall participate in lifelong learning regarding the practice of their
profession and shall promote an ethical approach to the practice of the profession.
Thank You