Software Engineering--Introduction

Slides:



Advertisements
Similar presentations
1 Introduction to Software Engineering Rajkumar Buyya Grid Computing and Distributed Systems Lab Dept. of Computer Science and Software Engineering University.
Advertisements

© Chinese University, CSE Dept. Software Engineering / Software Engineering Topic 1: Software Engineering: A Preview Your Name: ____________________.
Software Engineering 1. Introduction 2. Course schedule.
Difference between project and other assignments  real customer  before programming: negotiations with client to clarify requirements  often.
1 SYS366 Week 1 - Lecture 2 How Businesses Work. 2 Today How Businesses Work What is a System Types of Systems The Role of the Systems Analyst The Programmer/Analyst.
CS 501: Software Engineering Fall 2000 Lecture 4 Management I: Project Management.
Slide 1.1 © The McGraw-Hill Companies, 2002 Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach
1 Software Engineering--Introduction. 2 1.Syllabus, grading, schedule--class + lab--will all be on 2.Contact.
Difference between project and other assignments real customer before programming: negotiations with client to clarify requirements often changes.
Introduction to Systems Analysis and Design
 Software Software  Program vs Software Products Program vs Software Products  Software Characteristics Software Characteristics  Software Crisis.
Lesson 1 Week01.
Computers & Employment By Andrew Attard and Stephen Calleja.
Slide 1.1 CHAPTER 1 INTRODUCTION TO SOFTWARE ENGINEERING.
PROJECT MILESTONES Group Presentations: ~ 5 mins presentations.
Course Introduction Software Engineering
Web Service Development Within Different Study Years Maja Pušnik, Boštjan Šumak Institute of Informatics, FERI Maribor.
Lecture 1Software Engineering1 (Trimester I Session 2002/2003) Lecturer / Tutor Name : Mr. R. Logeswaran
OBJECT ORIENTED SYSTEM ANALYSIS AND DESIGN. COURSE OUTLINE The world of the Information Systems Analyst Approaches to System Development The Analyst as.
CSC 480 Software Engineering Lecture 1 August 21, 2002.
16 1 Installation  After development and testing, system must be put into operation  Important planning considerations Costs of operating both systems.
CS 501: Software Engineering Fall 1999 Lecture 6 Management I: Project Management.
1.1/46 Scope Of Software Engineering 1.2/46 Prologue… ‘Have you any idea what happened to our computers! Pay $0.00 bill, …, Pay the $0.00 bill within.
Software Acquisition and Project Management Lesson I: Introduction.
Introduction Fall 2001 Foundations of Computer Systems Prerequisite:91.166* or * Section A Instructor: Dr. David Hutchinson Office:
1 EE29B Feisal Mohammed EE29B: Introduction to Software Engineering Feisal Mohammed Ph: x3156.
Dr. DEVENDRA TAYAL– THE SCOPE OF SOFTWARE ENGINEERING.
Nic Shulver, Welcome to Principles of Software Engineering Tutor: Nic Shulver Web site and Blackboard presence 100% coursework,
1 Software Engineering--Introduction. 2 1.Syllabus, grading, schedule--class + lab--will all be on 2.Contact.
1 SYS366 Week 1 - Lecture 1 Introduction to Systems.
C_ITIP211 LECTURER: E.DONDO. Unit 1 : The Systems Development Environment.
CS 501: Software Engineering Fall 1999 Lecture 23 Design for Usability I.
Software Engineering – Fall 2015 (CSC 4350/6350) TR. 5:30 pm – 7:15 pm Rao Casturi 09/01/2015
Information System Applications
Advanced Programing practices
Chapter 1 Computer Technology: Your Need to Know
SOFTWARE TESTING Date: 29-Dec-2016 By: Ram Karthick.
Software Configuration Management
Software Quality and Testing (CSC 4133)
Lecture 1 What is Software Engineering? CSC 4700 Software Engineering
Chapter 18 Maintaining Information Systems
Transforming Organizations
The Systems Engineering Context
Introduction to System Analysis and Design
ECE 671 – Lecture 1 Introduction.
MANAGEMENT INFORMATION SYSTEMS
Software Documentation
VENDORS, CONSULTANTS AND USERS
Overview of System Engineering
ECE 671 – Lecture 1 Introduction.
Mr. Smith’s Schedule 1st Period Computer Science I
Software Quality Assurance Lecture 1
Introduction To software engineering
EE422C Software Design and Implementation II
Course: Module: Lesson # & Name Instructional Material 1 of 32 Lesson Delivery Mode: Lesson Duration: Document Name: 1. Professional Diploma in ERP Systems.
CS 8532: Advanced Software Engineering
Introduction to Systems Analysis and Design Stefano Moshi Memorial University College System Analysis & Design BIT
Systems Construction and Implementation
UNIT 5 EMBEDDED SYSTEM DEVELOPMENT
UNIT 5 EMBEDDED SYSTEM DEVELOPMENT
System Construction and Implementation
Frankfurt am Main University of Applied Sciences Nibelungenplatz 1 D Frankfurt am Main Mevius Ralf-Oliver.
Systems Construction and Implementation
Advanced Programing practices
Software and Software Engineering
Producing Web Course Material with IBM Knowledge Factory Team
Software Testing Lifecycle Practice
CMSC 345 Software Design and Development Spring 2004 Sections 0101 & 0201 Ms. Susan Mitchell Leave Your Ego at the Door! CMSC 345, Spring 2004.
NOTICE! These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer.
Information system analysis and design
Presentation transcript:

Software Engineering--Introduction

Course Administration Syllabus, grading, schedule--class + lab--will all be reachable at: http://secs.ceas.uc.edu/~cpurdy/sespr12/syllabus.html Contact information: C. Purdy 3. Java--to be learned in lab--you will develop basic skills, “expert” status not required 4. teams--3-4 per team (TURN IN SURVEY please) 5. project--most will be done in lab 6. passing 493/495: you must pass both classes; if you fail one, you will receive an F in both; otherwise you will receive a separate grade in each of these classes 7. grading: 493 | 495—explained on web pages 8. cell phones--for each call you get in class, you lose 3 points on your final grade 9. Electronic communication (text messages, laptops, etc.): NOT ALLOWED in lecture as these distract from class discussions 10. Reading assignments: please read BEFORE class & be ready to discuss in class (there may be quizzes for these) Group work / individual work: we will do a lot of each--follow rules for each assignment.

Course Themes The lectures and assignments in this course will focus on developing knowledge and skills for: effective teamwork project management software development "lifelong learning" In this course we will be concentrating on the process of developing software, not on technical skills in specialized areas such as database management, wireless computing, etc. The skills we will learn can also be applied to hardware projects and to mixed hardware / software projects.

People, Product, Process--> Project what is "software engineering"?: the "art" of building and maintaining software systems "…software engineering is a discipline whose aim is the production of fault-free software, delivered on time and within budget, that satisfies the user’s needs.” Schach, Object-Oriented and Classical Software Engineering, 5th ed., Mc-Graw-Hill 2002, p. 4

People, Product, Process--> Project Importance of “fault-free” … Software bugs can be lethal. The 2003 North America blackout was triggered by a local outage that went undetected due to a race condition – 55 million people were without power Smart ship USS Yorktown was left dead in the water in 1997 for nearly 3 hours after a divide by zero error Y2K problem … similarly 2038 problem … many Unix systems calculate the time in seconds since 1 January 1970, and store this figure as a 32-bit signed integer, for which the maximum possible value is 231-1 (2,147,483,647).

People, Product, Process--> Project "…software engineering is a discipline whose aim is the production of fault-free software, delivered on time and within budget, that satisfies the user’s needs.” Schach, Object-Oriented and Classical Software Engineering, 5th ed., Mc-Graw-Hill 2002, p. 4 components of software system construction (“4 P’s”): people product process project

Software Life Cycle

People (Stakeholders)—Roles, Goals, Functions Role Responsibility Customer High level requirements, project scope User What tasks must system carry out? What is level of expertise? Software salesperson Get requirements; delivery dates, cost Business Manager Organize, track work Technical Manager Manage technical issues Developer Design, implement, test Technical Writer Documentation, manuals Goals / Functions – conflicts?

Questions to Think About some points to ponder: "software crisis"--systems become more and more complex: --what can we automate? --how can we verify/ test such complex systems? "hardware/software" boundary --how can we do "co-design"? --where is the boundary? types of software systems --how do important application-specific systems differ? --what impact do differences have on development? --which systems will be most important in the coming years?

Important System Types Some Common System Types—what is the same/different? Databases Communication systems Entertainment systems Web-based applications Medical systems Manufacturing / transportation systems Simulation programs to support engineering and science Parallel/distributed applications Embedded systems Intelligent systems / robots - http://www.youtube.com/watch?v=7fYMxaBTqls Utility software for computer systems (compilers, e.g.) Utility software for general users (spreadsheets, e.g.)

References

Dilbert

Dilbert – Powerpoint Poisoning

Mythical Man-month La Brea Tar Pits

“Mythical Man-Month”

Why is Managing Programming Hard?

Architect --conceptual integrity System Architect Architect --conceptual integrity Process Model --have a plan and follow it III. Productivity – develop strategies that enhance productivity

System Architect 18 18

Separate Architecture, Implementation

Process Model

Productivity

Welcome to class – (and… turn in your surveys!) What did we do today? Welcome to class – (and… turn in your surveys!) It’s a “process course” -- teamwork, methodology, lifelong learning ALL in the context of good code development The 4 P’s -- people, product , process, project Plethora of models … plan, do, fix Fred Brooks , et. al – Mythical Man Month