Presentation is loading. Please wait.

Presentation is loading. Please wait.

Soft. Eng. IDr Driss Kettani1 CSC-3324: Chapter I Introduction and definition Reading: I. Sommerville, Edition 7, Chap. 1.

Similar presentations


Presentation on theme: "Soft. Eng. IDr Driss Kettani1 CSC-3324: Chapter I Introduction and definition Reading: I. Sommerville, Edition 7, Chap. 1."— Presentation transcript:

1

2 Soft. Eng. IDr Driss Kettani1 CSC-3324: Chapter I Introduction and definition Reading: I. Sommerville, Edition 7, Chap. 1

3 Soft. Eng. IDr Driss Kettani2 What is Software Engineering? What is it ?

4 Soft. Eng. IDr Driss Kettani3 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

5 Soft. Eng. IDr Driss Kettani4 Why do we need Software Engineering? Why SE ?

6 Soft. Eng. IDr Driss Kettani5 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.

7 Soft. Eng. IDr Driss Kettani6 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 …

8 Soft. Eng. IDr Driss Kettani7 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

9 Soft. Eng. IDr Driss Kettani8 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 ?

10 Soft. Eng. IDr Driss Kettani9 This is your world: Your Interest as a Programmer

11 Soft. Eng. IDr Driss Kettani10 Your Interest as a Software Engineer A programmer is part of a subsystem team:

12 Soft. Eng. IDr Driss Kettani11 Your Interest as a Software Engineer A programmer is part of a subsystem team, which is part of a team:

13 Soft. Eng. IDr Driss Kettani12 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:

14 Soft. Eng. IDr Driss Kettani13 Your Interest as a Software Engineer This is a program:

15 Soft. Eng. IDr Driss Kettani14 Your Interest as a Software Engineer It is part of a subsystem:

16 Soft. Eng. IDr Driss Kettani15 Your Interest as a Software Engineer It is part of a subsystem, which is part of a system:

17 Soft. Eng. IDr Driss Kettani16 The main concern of SE ? Software engineering is concerned with the final product and the development process…

18 Soft. Eng. IDr Driss Kettani17 What is a software product? ???

19 Soft. Eng. IDr Driss Kettani18 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

20 Soft. Eng. IDr Driss Kettani19 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…

21 Soft. Eng. IDr Driss Kettani20 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?

22 Soft. Eng. IDr Driss Kettani21 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.

23 Soft. Eng. IDr Driss Kettani22 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…

24 Soft. Eng. IDr Driss Kettani23 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).

25 Soft. Eng. IDr Driss Kettani24 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.

26 Soft. Eng. IDr Driss Kettani25 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


Download ppt "Soft. Eng. IDr Driss Kettani1 CSC-3324: Chapter I Introduction and definition Reading: I. Sommerville, Edition 7, Chap. 1."

Similar presentations


Ads by Google