Seunit 1
Seunit 1
Ethics in Engineering
Ethics are principles followed depending upon the moral responsibility that a person feels. The
study of related questions about moral ideals, character, policies and relationships of people
and organizations involved in technological activity, can be termed as Engineering ethics.
Engineering Ethics refers to the principles and standards that guide the
behavior of engineers in their professional practice. Ethics are essential in
engineering because engineers design and build systems that affect people’s
lives, the environment, and society. Engineering ethics involves identifying and
addressing ethical issues that arise in engineering practice, such as safety,
sustainability, and social responsibility.
Software processes are the activities for designing, implementing, and testing a software
system. The software development process is complicated and involves a lot more than
technical knowledge.
That’s where software process models come in handy. A software process model is
an abstract representation of the development process.
The goal of a software process model is to provide guidance for controlling and coordinating
the tasks to achieve the end product and objectives as effectively as possible.
Project requirements
Before you choose a model, take some time to go through the project requirements and
clarify them alongside your organization’s or team’s expectations. Will the user need to
specify requirements in detail after each iterative session? Will the
requirements change during the development process?
Project size
Consider the size of the project you will be working on. Larger projects mean bigger teams,
so you’ll need more extensive and elaborate project management plans.
Project complexity
Complex projects may not have clear requirements. The requirements may change often, and
the cost of delay is high. Ask yourself if the project requires constant monitoring or feedback
from the client.
Cost of delay
Is the project highly time-bound with a huge cost of delay, or are the timelines flexible?
Customer involvement
Do you need to consult the customers during the process? Does the user need to participate
in all phases?
Familiarity with technology
This involves the developers’ knowledge and experience with the project domain, software
tools, language, and methods needed for development.
Project resources