CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Chapter 1 Software and Software Engineering Discussion of the Software Product.

Slides:



Advertisements
Similar presentations
These courseware materials are to be used in conjunction with Software Engineering: A Practitioners Approach, 6/e and are provided with permission by R.S.
Advertisements

Developed by Reneta Barneva, SUNY Fredonia
Ch.1 Introduction to Software Engineering The Evolution 1.1 The Evolving Role of Software 1/15 In the early days: User Computer Software = Place a sequence.
Software Engineering Course Instructor: Aisha Azeem.
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman.1.
LECTURE-2. Software Is a Product Designed by software engineers. Consists of : –Programs - that execute within a computer and provides desired functions.
SWE Introduction to Software Engineering
Software Engineering II
CS487 Software Engineering Omar Aldawud
1 Chapter 1 Software and Software Engineering Software Engineering: A Practitioner’s Approach, 6th edition by Roger S. Pressman.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
CS4/542- Software Engineering  Software Design and Development  Required Text -- Code Complete by Steve McConnell  (Focuses on the problems of designing.
CSEB233: Fundamentals of Software Engineering Introduction to Software & Software Engineering.
1 Software Engineering Muhammad Fahad Khan Software Engineering Muhammad Fahad Khan University Of Engineering.
1 Software Engineering CEN5035 copyright © 1996, 2001 R.S. Pressman & Associates, Inc.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
Module 1 Introduction to Software Engineering Badariah Solemon 2010 CSEB233 Fundamentals of Software Engineering.
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman.1.
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 1 Software and Software Engineering Software Engineering: A Practitioner’s Approach, 6/e.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
1 Supplementary Slides for Software Engineering: A Practitioner's Approach, 6/e Part 1 Supplementary Slides for Software Engineering: A Practitioner's.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Chapter : Introduction to Software Engineering Ref. book : Software Engineering by Roger Pressman.
What is software? Software is a set of items or objects that form a configuration that includes: –Programs –Documents –Data.
1 Software Engineering: A Practitioner's Approach R.S. Pressman Textbook.
SOFTWARE ENGINEERING MCS-2 LECTURE # 1. COMPULSORY READING MATERIAL  Software Engineering (6 th edition) by IAN Sommerville  Software Engineering; A.
Chapter 1 Software and Software Engineering. A Quick Quiz 1. What percentage of large projects have excess schedule pressure? 25% 50% 75% 100% 2. What.
CS 732 Software Engineering Semester 1/2545 Dr.Choonhapong Thaiupathump.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 An Introduction to Software Engineering.
Chapter 1 소프트웨어의 본질 The Nature of Software 임현승 강원대학교
Software Engineering B.Tech Ii csE Sem-II Unit-1 PPT SLIDES By Hanumantha Rao.N Newton’s Institute of Engineering 1.
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.
CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Chapter 2 The Software Process Discussion of the Software Process: Process Framework,
CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Chapter 6 System Engineering Overview of System Engineering.
1.1 The Evolving Role of Software
Chapter 1 The Product. 2 Product  What is it?  Who does it?  Why is it important?  How to ensure it be done right?
INPUT#3 SOFTWARE ENGINEERING. QUALITY SOFTWARE?  Satisfies the needs of the users and programmers involved with it.
Introduction to Software Engineering. Why SE? Software crisis manifested itself in several ways [1]: ◦ Project running over-time. ◦ Project running over-budget.
1M.Sc(I.T.) VNSGU, Surat. Software is instructions (computer programs) that when executed provide desired function and performance, data structures that.
SWE311_Ch01 (071) Software & Software Engineering Slide 1 Chapter 1 Software and Software Engineering Chapter 1 Software and Software Engineering.
1 Chapter 1 Software and Software Engineering Chapter 1 Software and Software Engineering copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Introduction to Software Engineering COMP 412 – Software Engineering Project Management Prepared by: Engr. Maria Diorella A. Paguio.
An Introduction to Software Engineering (Chapter 1 from the textbook)
Overview: Software and Software Engineering n Software is used by virtually everyone in society. n Software engineers have a moral obligation to build.
Amit Singh Introduction to Software Engineering. What is Software? The product that software professionals build and then support over the long term.
SOFTWARE ENGINEERING. Objectives Have a basic understanding of the origins of Software development, in particular the problems faced in the Software Crisis.
Software Engineering Introduction.
CS223: Software Engineering Lecture 2: Introduction to Software Engineering.
BIT SOFTWARE ENGINEERING APPLICATION DEVELOPMENT Referred Textbook: Software Engineering: A Practitioner’s Approach, 7/e, by Roger S. Pressman CHAPTER.
PI2134 Software Engineering IT Telkom.  Software definition  Characteristic of software  Software myths  Software Engineering definition  Generic.
CS 281 Intro to Software Engineering Lecture 01 Introduction to the Course The Nature of Software.
Software Engineering Facilitator Faisal Shafique Butt.
Part 1 Introduction to Software Engineering 1 copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc. For University Use Only May be reproduced ONLY.
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 1 Introduction to Software Engineering.
Software and Software Engineering By bscshelp.com software engineering 1.
TCS / TIT 603 : Software Engineering
Introduction to Software Engineering
Chapter 1 The Nature of Software
The Product The Evolving Role of Software Dual role of software Product - It’s a information transformer producing, managing, acquiring, modifying, transmitting.
Software What Is Software?
Chapter 1 The Nature of Software
Chapter 1 The Nature of Software
Chapter : Introduction to Software Engineering
For University Use Only
Overview: Software and Software Engineering
What is Software? Software is: (1) instructions (computer programs) that when executed provide desired features, function, and performance; (2) data structures.
Software and Software Engineering
Introduction Software Engineering.
Presentation transcript:

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Chapter 1 Software and Software Engineering Discussion of the Software Product and Software Engineering

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Software Evolution The role of software in the information age. Information and knowledge are the focal point for power in the 21 st century. Software is being part of most daily activities. Software is an integral part of many types of systems (medical, telecom, avionic, military, transportation, etc…). Software is now a vast industry with significant economic power. The “law of unintended consequences” and computer software.

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. The Dual Role of Software Software is product that –delivers computing potential across networks of hardware. –transforms information - produces, manages, acquires, modifies, displays, or transmits information. Software is vehicle for delivering a product (information) –provides system functionality (e.g., payroll system) –controls other software (e.g., an operating system) –effects communications (e.g., networking software) –helps build other software (e.g., software tools)

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Software Development Computer-based systems are more complex than ever. Require sophisticated software programs (complexity issue). Shift from “lone programmer” to “software engineering team” However, some of the questions still being asked today are: –Why does it take long to finish a software project? –Why development cost is always high? –Why cannot all errors be found before the software is delivered to the customer? –Why it is difficult to measure progress during software development? These questions lead to developing Software Engineering Framework and practices.

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. What is a Software Product? What is Computer Software? Computer programs (instructions) that execute to perform a specified task. A set of items or objects that form a “configuration” that includes programs, documents, and data. Is software different than other things we build?

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Software Characteristics (1) Software is engineered, but not manufactured –Both aim for high quality through good design –Engineering is a different approach than manufacturing quality issue cost issue

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Software Characteristics (2) Software doesn’t wear out, but it deteriorates Time Failure rate Infant Mortality Wear Out Hardware Product

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Software Characteristics (3) Software Product

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Software Characteristics (3) Software is more complex to maintain –Most software is custom built –Software has no spare parts –Immature component-based development (lack of standards) –Software reuse is evolving, but not a “natural/integral part “ of the development process (mostly interface components)

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Software Application (1) Software applicability is very wide, leading to more SE challenges. Generic categories of software applications: –Systems Software (services other programs) Operating systems, Compilers, Editors, Device drivers, Communication software, Search agents, etc… –Application Software (processes real-time events) Traffic control, Weather applications, Avionics, Control systems, etc..

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Software Application (2) –Engineering/Scientific Software (process complex calculations - number crunching) Simulation, VR, Mineral exploration, molecular biology, space exploration, etc… –Embedded Software (controls devices - read-only) Consumer appliances, Household devices, Vehicles, etc… –Business (product-line) Software (process business information and databases - MIS systems) Payroll, Shipping, Accounting, Inventory, Banking, Financial transactions, Word-Processing, Multimedia, etc…

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Software Application (3) –Web Applications (supports web development) Webpage builders, Browsers, e-Commerce, B2B, etc… –PC Software (packaged software) Word processor, Database, Editors, Graphics software, etc,… –AI Software (implements non-numeric algorithms) Expert systems, Pattern recognition, Games, Robotics, etc… –Ubiquitous computing - Wireless networks and applications for small devices to communicate.

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. New Software Categories –Netsourcing - the Web as a computing engine. Applications for end-user to make use of the Web engine. (personal planning applications) –Open source - ”free” source code open to the computing community (a blessing, but also a potential curse!) –Other categories - non-numeric algorithms: Data mining, Grid computing, and Cognitive machines The challenge: Building applications that can accommodate future changes in technology, business, and end-user needs. ( the law of unintended consequences )

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Legacy Systems Developed decades ago and frequently modified. Quality issues. Why it must be changed? –software must be adapted to meet the needs of new computing environments or technology. –software must be enhanced to implement new business requirements. –software must be extended to make it interoperable with other more modern systems or databases. –software must be re-architected to make it viable within a network environment.

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Cost of Change Definition Development After release 1x 1.5-6x x

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Software Challenges How do we ensure the quality of the software that we produce? How do we meet growing demand and still maintain budget control? How do we upgrade an aging "software plant”? How do we avoid disastrous time delays? How do we successfully institute new software technologies?

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. In summary… - Software has evolved to a large industry - The industry requires engineering practices - The practices are based on established processes - The processes form a framework for building high quality software systems…

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Something to Think About… How does software differ from products produced by other engineering discipline? Differentiate software characteristics from those of hardware. What do we mean by software crisis? Many books authored on software failure. Read Software Myths in the book and think of other new myths.

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Suggested Problems Try to work problems 1.1, 1.2, 1.3, 1.5, 1.6, 1.11, and 1.12, page 17. No submission is required for practice assignments. Work it for yourself!

CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Last Slide End of chapter 1