INTRODUCTION What is software? What is software engineering?

Slides:



Advertisements
Similar presentations
Chapter 1 Introduction.
Advertisements

Lecture 1: Introduction to Software Engineering WXGE6103 Software Engineering Process and Practice Introduction to SE.
Software Engineering Software Engineering is the science and art of building significant software systems that are: 1) on time 2) on budget 3) with acceptable.
Computer ScienceSoftware Engineering Slide 1 SOFTWARE ENGINEERING INTRO l Learn by doing l Two projects Galaxy Sleuth Graduate Program Application l Goals:
Introduction To Software Engineering
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 An Introduction to Software Engineering.
Software Engineering COMP 201
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 An Introduction to Software Engineering.
Modified from Sommerville’s slidesSoftware Engineering, 7th edition. Chapter 1 Slide 1 An Introduction to Software Engineering.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 An Introduction to Software Engineering September 5, 2007.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 An Introduction to Software Engineering.
SE 112 Slide 1 SE 112 l
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 System and Software Engineering.
Software Engineering Methodologies (Introduction)
Objectives of the Lecture
Software EngineeringIntroduction Slide 1 Software Engineering Mr. Ahmad Al-Ghoul.
An Introduction to Software Engineering | Website for students | VTU NOTES1.
1 An Introduction to Software Engineering. 2 Objectives l To introduce software engineering and to explain its importance l To set out the answers to.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 An Introduction to Software Engineering.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 An Introduction to Software Engineering ( ICS 2302)
An Introduction to Software Engineering DeSiamore 1.
Introduction to Software Engineering
2-Oct-15 1 Introduction to Software Engineering Softwares Importance of SWE Basic SWE Concepts ICS Software Engineering.
2-Oct-15 Introduction to SWE1 Introduction to Software Engineering Softwares Importance of SWE Basic SWE Concepts.
Software engineering. What is software engineering? Software engineering is an engineering discipline which is concerned with all aspects of software.
1 Software Engineering, 7th edition. Chapter 1 Courtesy: ©Ian Sommerville 2004 Sep 02, 2008 Lecture # 1 An Introduction to Software Engineering.
©Ian Sommerville 2006Software Engineering, 7th edition. Chapter 1 Slide 1 An Introduction to Software Engineering.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 1 Slide 1 An Introduction to Software Engineering.
An Introduction to Software Engineering. What is Software?
Software Engineering Slide 1 An Introduction to Software Engineering.
Chapter 1: Introduction Omar Meqdadi SE 2730 Lecture 1 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 1 Slide 1 Chapter 1 Introduction.
An Introduction to Software Engineering. Communication Systems.
Software Engineering, COMP201 Slide 1 Introduction to software engineering Lecture 1.
1 Software Engineering Ian Sommerville th edition Instructor: Mrs. Eman ElAjrami University Of Palestine.
Introduction to Software Engineering. Why SE? Software crisis manifested itself in several ways [1]: ◦ Project running over-time. ◦ Project running over-budget.
An Introduction to Software Engineering Ian Sommerville, Software Engineering 李彤, 王仲民, 康雁, 陆歌浩.
INTRODUCTION TO SOFTWARE ENGINEERING. Objectives To introduce software engineering and to explain its importance To set out the answers to key questions.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 / 31 An Introduction to Software Engineering.
1 Software Engineering, 8th edition. Chapter 1 Jan 28 th, 2009 Lecture # 1 Courtesy: ©Ian Sommerville 2006 An Introduction to Software Engineering.
Software Engineering Chapter 1- Introduction. Topics covered  Professional software development  What is meant by software engineering.  Software engineering.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
1 CSC 4700 Software Engineering John Lewis These slides are based on originals provided by Ian Sommerville.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 An Introduction to Software Engineering.
Software Engineering I. Course Description This course is designed to provide understanding of the concepts, techniques and tools for the definition,
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 An Introduction to Software Engineering.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 1 Slide 1 Chapter 1 Introduction As modified by Randy Smith.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 An Introduction to Software Engineering.
An Introduction to Software Engineering Based on Ian Sommerville’s Software Engineering 8 th Ed. Slides by Denny Lin.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 An Introduction to Software Engineering.
Introduction to Software Engineering
Software Engineering An Introduction.
An Introduction to Software Engineering
An Introduction to Software Engineering
CS281 – Introduction to Software Engineering Chapter1: Introduction
MISY 301 Mr.Mohammed Rafeeque.
An Introduction to Software Engineering
Software Engineering Introduction.
An Introduction to Software Engineering
An Introduction to Software Engineering
Introduction to Software Engineering
What are the attributes of good software?
CS281 – Introduction to Software Engineering Chapter1: Introduction
Software Engineering Software Engineering is the science and art of
CS385T Software Engineering Dr.Doaa Sami
An Introduction to Software Engineering
Software Engineering Software Engineering is the science and art of
An Introduction to Software Engineering
An Introduction to Software Engineering
An Introduction to Software Engineering
Presentation transcript:

INTRODUCTION What is software? What is software engineering? Computer programs + Configuration data and files + User and system documentation. What is software engineering? An engineering discipline which is concerned with all aspect of software production.*. Class focus on Industry; Example of S.E. : From Spec to Product (e.g. Airport management software) Why graduate often have problems starting industry (lack of team work, too much hand holding)

SE vs. CS Difference between software engineering and computer science: Computer science is concerned with theory and fundamentals Software engineering is concerned with practical aspects of developing and delivering software Software engineering challenges: Coping with legacy systems* Coping with increasing diversity (heterogeneous systems-many types of hardware/software) Coping with faster, cheaper Legacy: Explain legacy and other types (e.g. client/server, web development, …) and how in & out of favor legacy has gotten

Software Process What is a software process? A set of activities and associated results which produce a software product Four fundamental process activities: Software specification Software development Software validation (i.e. It does what it intended to do based on software spec.) Software evolution (i.e. Change/enhancement/maintenance)

Software Process Models What is a software process model?* A representation of software process from a specific perspective. Examples of software process models: Workflow model: Sequence of activities in the process along with their inputs, outputs and dependencies. Data-flow or activity model: A set of activities that carry out some data transformation (inputoutput). Role/action model: Represents roles of people involved in the software process and activities for which they are responsible. Software process model: Important at software design phase

Software Development Models Different models (paradigms) of software development: The Waterfall approach: Complete one phase (e.g. req., design, code, test) before going to next. Evolutionary development: Build quick, modify, and redo component until completion (Prototyping often used).*. Formal transformation: Transform Specifications, using mathematical methods, to a program; guarantee correctness. System assembly from reusable components: Assemble already existing parts. Incremental method: Design and deliver parts as they become available (i.e. many small deliverables). Software development models: Important at software development phase (Software process model: Important at software design phase)

Attributes of Good Software Maintainability (more than 40% of software cost is due to maintenance) Dependability (Reliability, security, safety)* Efficiency (memory, CPU time) Usability (Good UI and Documentation) Dependability: CASE statement in landing gear at IFRS

Ethical Responsibility Confidentiality (respect confidentiality of employer/client) Competence (avoid misrepresenting the level of competence)* Intellectual property rights (local laws, patents, copyrights) Computer misuse (Viruses, hacking, information theft) Competence: Problem with over-stating skills at interview time while in industry. Truth will come out.