soft. eng. idr driss kettani1 csc-3324: chapter i introduction and definition reading: i....
Post on 19-Dec-2015
220 views
TRANSCRIPT
Soft. Eng. I Dr Driss Kettani 1
CSC-3324: Chapter I
Introduction and definition
Reading: I. Sommerville, Edition 7, Chap. 1
Soft. Eng. I Dr Driss Kettani 3
What is SE ?
Software engineering is concerned with theories,
methods and tools for professional software
development
Analyzing, Designing, Implementing and maintaining
software systems in a formal, transparent,
predictable and cost effective way…
Software + Engineering
Soft. Eng. I Dr Driss Kettani 5
Facts and Statistics…
23% of all projects undertaken by internal information systems organizations are cancelled before their completion
49% of projects cost 189% of their original estimates
Only 28% of projects are completed on time and within budget
Projects completed have 42% of the originally proposed features or functions.
Soft. Eng. I Dr Driss Kettani 6
Facts and Statistics…
A poorly programmed ground-based altitude warning system was partly responsible for the 1997 Korean Air crash in Guam… Causing the kill of 228 people
The US$165M Mars Polar Lander probe was destroyed in its final descent to the planet in 1999, because its software shut the engines off 100 feet above the surface…
Faulty software in anti-lock brakes forced the recall of 39 000 trucks and tractors and 6000 school buses in 2000…
Soft. Eng. I Dr Driss Kettani 7
Facts and Statistics…
$275 Billion Money spent on software development every year in
the US alone (2004) $70 Billion
The economic damage caused by software bugs $25 Billion
The expected sum the industry could save if it used better software infrastructure
Some examples from Morocco (2005): Biometric system: 300MDH (Cogent) + 900MDH
(Thalès) Government: 550MDH
Soft. Eng. I Dr Driss Kettani 8
Why do we need Software Engineering?
The economy of the world is dependent on software... And, Software
engineering expenditure represents a significant fraction of GNP of
many countries…
More and more systems are software controlled...
Many important aspects of YOUR life depend on software
engineering
Why SE ?
Soft. Eng. I Dr Driss Kettani 10
Your Interest as a Software Engineer
A programmer is part of a subsystem team:
Soft. Eng. I Dr Driss Kettani 11
Your Interest as a Software Engineer
A programmer is part of a subsystem team, which is part of a team:
Soft. Eng. I Dr Driss Kettani 12
Your Interest as a Software Engineer
A programmer is part of a subsystem team, which is part of a team, which is part of a Project/Company:
Soft. Eng. I Dr Driss Kettani 15
Your Interest as a Software Engineer
It is part of a subsystem, which is part of a system:
Soft. Eng. I Dr Driss Kettani 16
The main concern of SE ?
Software engineering is concerned with the final
product and the development process…
Soft. Eng. I Dr Driss Kettani 18
Software product attributes
Maintainability It should be possible for the software to evolve to meet
changing requirements Dependability
The software should not cause physical or economic damage in the event of failure (Reliability, Security and Safety)
Efficiency The software should not make wasteful use of system
resources Usability
Software should have an appropriate user interface and documentation
Soft. Eng. I Dr Driss Kettani 19
What is a software process ?
Structured set of activities (steps) required to
develop a software system...
Activities vary depending on the organization
and the type of system being developed…
Usually: Specifications, Programming, Validation
and Evolution
Models of SE process…
Soft. Eng. I Dr Driss Kettani 20
Process attributes
Understandability: Is the process defined and understandable?
Visibility: Is the process progress externally visible
Supportability: Can the process be supported by CASE tools?
Acceptability: Is the process acceptable to those involved in it?
Reliability:Are process errors discovered before they result in
product errors?
Rapidity: How fast can the system be produced?
Soft. Eng. I Dr Driss Kettani 21
Professional and ethical responsibility
Software engineering involves wider
responsibilities than simply the application of
technical skills.
Software engineers must behave in an honest and
ethically responsible way if they are to be
respected as professionals.
Ethical behaviour is more than simply upholding
the law.
Soft. Eng. I Dr Driss Kettani 22
Issues of professional responsibility
Confidentiality Engineers should normally respect the confidentiality
of their employers or clients irrespective of whether or
not a formal confidentiality agreement has been
signed…
Competence Engineers should not misrepresent their level of
competence. They should not knowingly accept work
which is outwith their competence…
Soft. Eng. I Dr Driss Kettani 23
Issues of professional responsibility
Intellectual property rights Engineers should be aware of local laws governing
the use of intellectual property such as patents, copyright, etc. They should be careful to ensure that the intellectual property of employers and clients is protected.
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 (dissemination of viruses).
Soft. Eng. I Dr Driss Kettani 24
ACM/IEEE Code of Ethics
The professional societies in the US have cooperated to produce a code of ethical practice.
Members of these organisations sign up to the code of practice when they join.
The Code contains eight Principles related to the behaviour of and decisions made by professional software engineers, including practitioners, educators, managers, supervisors and policy makers, as well as trainees and students of the profession.
Soft. Eng. I Dr Driss Kettani 25
Miscellaneous…
Sensors election…
About the projects…
Team composition… Members: 3 to 4 students…
Deadline: Sept. 10th at/before class time
Projects proposal… Around one page that
contains the project title and description and the
client name, address and phone number…
Deadline: Sept. 14th 2007 at/before class time