Software Engineering & Project Management Lecture # 01 Computer Science & Engineering Lucky Sharma www.lucky.pentaclesoftwares.com Subject Code: CS 603.

Slides:



Advertisements
Similar presentations
CS540 Software Design Lecture 1 1 Lecture 1: Introduction to Software Design Anita S. Malik Adapted from Budgen (2003) Chapters 1.
Advertisements

What is Software Engineering? And why is it so hard?
SWE Introduction to Software Engineering
Overview of Software Engineering Principles
7M822 Software Engineering Introduction 7 September 2010.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 An Introduction to Software Engineering.
Software Engineering COMP 201
Software Engineering General Project Management Software Requirements
Overview of Software Engineering Principles CSCI 599: Software Engineering for Embedded Systems August 27, 2002.
©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.
CS351 - Software Engineering (AY2005)1 What is software engineering? Software engineering is an engineering discipline which is concerned with all aspects.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 An Introduction to Software Engineering.
SE 112 Slide 1 SE 112 l
An Introduction to Software Engineering
Ch.11 Software Engineering A Preview. Ch.12 Outline Definitions of software engineering (SE) Historical origins of SE SE as part of systems engineering.
Lecture 1.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 System and Software Engineering.
CSI315 Web Applications and Technology Overview of Systems Development (342)
©Sommerville 2000, Medvidovic 2006, Mejia 2009,Introduction to Software Engineering Slide 1 Ingeniería de Software l Diseño, construcción y mantenimiento.
PGD-1303 Software Project Management?. What is software? Software  Computer programs and associated documentation Documentation includes  requirements.
What is Software Engineering?. Software engineering Multi-person construction of multi-version software (David Parnas) An engineering discipline whose.
Software Engineering Methodologies (Introduction)
Objectives of the Lecture
SOFTWARE ENGINEERING Hoang Huu Hanh, Hue University hanh-at-hueuni.edu.vn.
1 CS 456 Software Engineering. 2 Contents 3 Chapter 1: Introduction.
UNIVERSITI TENAGA NASIONAL “Generates Professionals” CHAPTER 4 : Part 1 INTRODUCTION TO SOFTWARE DEVELOPMENT: SYSTEM ANALYSIS & DESIGN.
Software EngineeringIntroduction Slide 1 Software Engineering Mr. Ahmad Al-Ghoul.
PROJECT MILESTONES Group Presentations: ~ 5 mins presentations.
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 Software Engineering The first lecture.
Introduction to Software Engineering
CEN st Lecture CEN 4021 Software Engineering II Instructor: Masoud Sadjadi What.
Ch.11 Software Engineering A Preview. Ch.12 Outline Definitions of software engineering (SE) Historical origins of SE SE as part of systems engineering.
Topic (1)Software Engineering (601321)1 Introduction Complex and large SW. SW crises Expensive HW. Custom SW. Batch execution.
Ch.1 1 Software Engineering A Preview Chapter 1. Ch.1 2 Outline My Background Definitions of software engineering (SE) Historical origins of SE SE as.
What is Software?  Computer programs and associated documentation such as requirements, design models and user manuals  Software products may be developed.
Software Engineering EKT 420 MOHAMED ELSHAIKH KKF 8A – room 4.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 1 Slide 1 An Introduction to Software Engineering.
An Introduction to Software Engineering. What is Software?
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.
Lecture 1 The University of Lahore Software Engineering Saeed Akhtar
SOFTWARE ENGINEERING Chapter 1. Introduction We can’t run the modern world without software. Why? Discussion….
Software Engineering, COMP201 Slide 1 Introduction to software engineering Lecture 1.
Introduction to Software Engineering. Why SE? Software crisis manifested itself in several ways [1]: ◦ Project running over-time. ◦ Project running over-budget.
CSE 102 Introduction to Computer Engineering What is Computer Engineering?
CSC480 Software Engineering Lecture 5 September 9, 2002.
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.
Software Engineering Lecture # 1. What is Software? 2 Software is a set of items or objects that includes: programs data documents.
COMPUTER SCIENCE Computer science (CS) is The systematic study of algorithmic.
Week 1 -Introduction IT2005 System Analysis & Design.
1 Software Engineering, 8th edition. Chapter 1 Jan 28 th, 2009 Lecture # 1 Courtesy: ©Ian Sommerville 2006 An Introduction to Software Engineering.
An Introduction to Software Engineering. Objectives  To introduce software engineering and to explain its importance  To set out the answers to key.
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.
INTRODUCTION TO SOFTWARE DEVELOPMENT (SOFTWARE ENGINEERING-I)
Introduction Complex and large SW. SW crises Expensive HW. Custom SW. Batch execution Structured programming Product SW.
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.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 1 Slide 1 Chapter 1 Introduction As modified by Randy Smith.
L ECTURE 1 Introduction Getting started with software engineering.
CompSci 280 S Introduction to Software Development
An Introduction to Software Engineering
An Introduction to Software Engineering
Overview: Software and Software Engineering
CSSSPEC6 SOFTWARE DEVELOPMENT WITH QUALITY ASSURANCE
Introduction to Requirements Management
Presentation transcript:

Software Engineering & Project Management Lecture # 01 Computer Science & Engineering Lucky Sharma Subject Code: CS 603

2 Syllabus Outline Unit One: The Software Product and Software Process Unit Two: Requirement Elicitation, Analysis, and Specification Unit Three: Software Design Unit Four: Software Analysis and Testing Unit Five: Software Maintenance & Software Project Measurement

3 Lecture # 01 - Agenda 1.Introduction to Software Engineering.

Key Ingredients in successful organizations People Technology Process

A better view Process and Technology supporting people Processes Technology People

What is software? Computer programs and associated documentation Software products may be developed for a particular customer or may be developed for a general market Software products may be  Generic - developed to be sold to a range of different customers  Custom- developed for a customer according to their specification

7 Engineering Engineering is …  The application of scientific principles and methods to the construction of useful structures & machines Examples  Mechanical engineering  Computer engineering  Civil engineering  Chemical engineering  Electrical engineering  Nuclear engineering  Aeronautical engineering

Software Engineering The term is 35 years old: NATO Conferences  Garmisch, Germany, October 7-11, 1968  Rome, Italy, October 27-31, 1969 The reality is it is finally beginning to arrive  Computer science one the scientific basis Years of studies/experience/statistics provide basis too  Many aspects have been made systematic Methods/methodologies/techniques Languages Tools Processes

Software Engineering: From Principles to Tools

10 Why Engineer Software ? The problem is complexity Many sources, but size is a key:  Mozilla contains 3 Million lines of code  UNIX contains 4 million lines of code  Windows 2000 contains 10 8 lines of code Second is role and combinatorics of “state” Third is uncertainty of “inputs” and their timing Fourth is the continuing changing “environment” and demands. Software engineering is about managing all the sources of complexity to produce effective software.

11 Software Engineering in a Nutshell Development of software systems whose size/complexity warrants team(s) of engineers  multi-person construction of multi-version software [Parnas 1987] Scope  Study of software process, development/management principles, techniques, tools and notations Goal  Production of quality software, delivered on time, within budget, satisfying customers’ requirements and users’ needs

What does a software engineer do? Software engineers should  adopt a systematic and organised approach to all aspects of software development.  use appropriate tools and techniques depending on the problem to be solved, the development constraints and the resources available  Understand and communicate processes for improved software development within their organization  Be effective team members and/or leaders.  Can be very technical or more managerial depending on organizational need.

13 Difficulties? SE is a unique brand of engineering  Software is malleable  Software construction is human-intensive  Software is intangible and generally invisible  Software problems are unprecedentedly complex  Software directly depends upon the hardware It is at the top of the system engineering “food chain”  Software solutions require unusual rigor  Software “state” means behaviors can depend on history.  Software has discontinuous operational nature

Software Engineering ≠ Software Programming Software programming  Single developer  “Toy” applications  Short lifespan  Single or few stakeholders Architect = Developer = Manager = Tester = Customer = User  One-of-a-kind systems  Built from scratch  Minimal maintenance

Software Engineering ≠ Software Programming Software engineering  Teams of developers with multiple roles  Complex systems  Indefinite lifespan  Numerous stakeholders Architect ≠ Developer ≠ Manager ≠ Tester ≠ Customer ≠ User  System families  Reuse to amortize costs  Maintenance accounts for 60%-80% of overall development costs

16 Thank You Next Class agenda 1.Software’s qualities. 2.Software Product. 3.Software Process. Catch latest updates at