Lecture # 4
Lecture # 4
An overview of software
engineering
Software engineering fundamentals
(CSC-2073)
– Software engineering involves wider responsibilities than simply the application of technical skills.
– Software engineers must behave in an honestand ethicallyresponsible way if they are to be respected as
professionals.
– Ethical behavior is more than simply upholding the law but involves following a set of principles that are
– morally correct
Confidentiality
– Engineers should generally respect the confidentiality of their employers or clients
irrespective of whether a formal confidentiality agreement has been signed.
Competence
– Engineers should not misrepresent their competence level and should not knowingly accept work
that is outwitting their competence.
Computer misuse
– Software engineers should not use their technical skills to misuse other people’s computers.
Computer misuse ranges from relatively trivial (game playing on an employer’s machine, say) to
extremely serious (disseminating viruses).
– Members of these organizations sign up for the Code of practice when they join.
– The Code contains eight Principles related to the behavior of and decisions made by professional
software engineers, including practitioners, educators, managers, supervisors, policymakers, trainees,
and students of the profession.
– Computers have a central and growing role in commerce, industry, government, medicine,
education, entertainment and society at large. Software engineers are those who contribute by
direct participation or by teaching, to the analysis, specification, design, development, certification,
maintenance and testing of software systems.
– Because of their roles in developing software systems, software engineers have significant
opportunities to do good or cause harm, to enable others to do good or cause damage, or to
influence others to do good or cause harm. To ensure, as much as possible, that their efforts will be
used for good, software engineers must commit themselves to make software engineering a
beneficial and respected profession.
ACM/IEEE-CS Joint Task Force on Software Engineering Ethics and Professional Practices
PREAMBLE
The short version of the code summarizes aspirations at a high level of abstraction; the clauses
included in the full version give examples and details of how these aspirations change how we act as
software engineering professionals. Without the aspirations, the details can become legalistic and
tedious; without the details, the aspirations can become high-sounding but empty; together, the
aspirations and the details form a cohesive code.
Software engineers shall commit to making software analysis, specification, design, development,
testing, and maintenance a beneficial and respected profession. By their commitment to the health,
safety, and welfare of the public, software engineers shall adhere to the following Eight Principles:
– Management - Software engineering managers and leaders shall subscribe to and promote an
ethical approach to software development and maintenance management.
– Profession - Software engineers shall advance the integrity and reputation of the work consistent
with the public interest.
– Colleagues - Software engineers shall be fair to and supportive of their colleagues.
– Self Software engineers shall participate in lifelong learning regarding their profession's practice and
Collects data from a blood sugar sensor and calculates the amount of insulin required to be injected.
Any question ?