Chapter 1-Introduction To Software Engineering
Chapter 1-Introduction To Software Engineering
Introduction
Read chapter thoroughly
Key points
Exercises...
We will
Read project Deliverables and tentative lecture schedule
Read syllabus..
Form teams
Importance of class attendance; team participation; short quizzes.
Key: don't get behind...
Answer
What is software?
What
software?
are
the
attributes
of
Computer
programs
and
associated
documentation. Software products may be developed for
a particular customer or may be developed for a general
market.
good
Good software should deliver the required functionality
and performance to the user and should be maintainable,
dependable and usable.
Chapter 1 Introduction
Answer
the
costs
of
software
What
are
the
best
software
While all software projects have to be professionally
engineering techniques and methods?
managed and developed, different techniques are
appropriate for different types of system. For example,
games should always be developed using a series of
prototypes whereas safety critical control systems require
a complete and analyzable specification to be developed.
You cant, therefore, say that one method is better than
another.
What differences has the web made
The web has led to the availability of software
to software engineering?
services and the possibility of developing highly
distributed service-based systems. Web-based systems
development has led to important advances4 in
Chapter
1 Introduction
3
programming
languages and software reuse.
Dependability and
security
Description
Software should be written in such a way so that it can evolve to
meet the changing needs of customers. This is a critical attribute
because software change is an inevitable requirement of a changing
business environment.
Software dependability includes a range of characteristics including
reliability, security and safety. Dependable software should not cause
physical or economic damage in the event of system failure. Malicious
users should not be able to access or damage the system.
Efficiency
Acceptability
Chapter 1 Introduction
More:
Many other quality metrics such as
Reliability
Scalability
Portability
Reusability
Useability
6
Software Engineering
Software engineering is an engineering discipline
that is concerned with all aspects of software production
from the early stages of system specification through
to maintaining the system after it has gone into use.
Engineering discipline
Using appropriate theories and methods to solve problems
bearing in mind organizational and financial constraints.
Chapter 1 Introduction
77
Chapter 1 Introduction
68
10
11
Chapter 1 Introduction
12
Chapter 1 Introduction
13
10
14
Competence
Engineers should not misrepresent their level of competence. They
should not knowingly accept work which is out with their competence.
Computer misuse
Software engineers should not use their technical skills to misuse other
peoples computers. Computer misuse ranges from relatively trivial
(game playing on an employers machine, say) to extremely serious
(dissemination of viruses).
15
Chapter 1 Introduction
17
14
Ethical 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.
Chapter 1 Introduction
18
15
Ethical Dilemmas
Disagreement in principle with the policies of senior
management. Discuss
Your employer acts in an unethical way and releases a
safety-critical system without finishing the testing of the
system. Discuss
Participation in the development of military weapons
systems or nuclear systems. Discuss
19
20
21
17
Chapter 1 Introduction
22
22
Chapter 1 Introduction
23
19
Chapter 1 Introduction
24
20