Mark J. Christensen
Presented by:
Feras Batarseh
Pure Software: pharmacy.
Software controlled products: braking system.
People earn a living from building software.
The world cannot function as it does,
Without software.
BUT SW does nothing except moving electrons from one computer to another.
Like all eng. Activities it derives importance from the world.
SW is the Key enabler, but not the
final effecter.
Ex. Decision making.
SW importance depends on the number of:
-Individuals.
-Entities that are involved in the process.
-Size of the business.
Software industry and impact are not isolated to one part of the world.
SW development and research centers all around the world, with people,
Governments and companies involved in the process.
Software is still limited to a number of places in the world, there is a lot of places that software didn’t reach yet!
GUI is a major factor in spreading PC’s around the world, if the user interface wasn’t that friendly, just the specialists would use the computers.
Knowing what doesn’t work and Past SW failures, helps us avoid repeating mistakes.
Expect any un expected behavior from the
SW if not build on scientific and technical knowledge.
Short version and Long version.
Describes the relation for SW engineer with the surrounding:
1-Society
2-employer
3-work activities and products
4-SW engineering profession
Engineer is asked to balance between the different sides of the code, as they may conflict sometimes.
Ex:
Faithfulness to the public and to the employer.
Short version with 8 points.
Long version with 6 to 15 sub points for the 8 points.
Available at the IEEE CS and ACM websites.
80% of individuals working for licensed companies are not licensed!
They can still work but cannot take major decisions.
British and American courts developed rules for such cases.
Plaintiff must present expert testimony to proof the deviation from the standards from the defendant engineer.
Or proof the design criteria that the product didn’t meet to sue the manufacturer.
The engineer doesn’t guarantee the results, his only responsibility is to work in accordance to the standards .
The manufacturer must provide a non defected product and is responsible for the results.
You are transferred into a new work unit, although their work is legal, you concluded that its not for the public good.
What do you do?
1-Leave the job.
2-Continue to work in the business with your best effort.
3-Continue to work and complain to your colleagues and friends about it.
1-you left your job, didn’t benefit your society or your company or even your self.
2-continue your work!
You are harming your society.
3-you are dragging down your colleagues morale.
In all the cases you are violating the code!
In such cases you should balance your action, and do it with your best of honesty and professionalism.
By respecting your colleagues judgments, the society and your employer.
In my opinion, I think the software engineer must contact his employer, to discuss about making the society a priority, without harming the profit of the company.
Respect your colleagues.
Two main problems (occur frequently):
Immaturity.
Technical Arrogance.
IEEE provided standards for working in SW engineering threw all the stages like:
-IEEE standard for software test documentation.
-IEEE standard for software Maintenance.
-IEEE standard for software Unit testing
-IEEE standard for software verification and validation.
-IEEE standard for software safety plans.
Many professions had codes for decades, but problems still occur.
-
-
Ex:
Doctors make surgical mistakes.
Structural engineers design bridges that fail during storms.
So: Codes must provide guidance about what should be done.
Average user of software is still expecting a great deal of bugs, failures!!
Does that mean that we failed?
NO!
Even if the underlying science is well known, a great deal of work is needed to apply it to domain of engineering.
That is the case with all engineering disciplines.
Thank you.