Pertemuan 1 Introduction to Software Engineering Mata kuliah: T0144 – Advanced Topics in Software Engineering Tahun: 2010.

Slides:



Advertisements
Similar presentations
Bill Malkin Software Engineering and Architecture Joint Technical Program.
Advertisements

Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 1: Introduction.
Computer Science Department
Chapter 2 – Software Processes
CS 3500 SE - 1 Software Engineering: It’s Much More Than Programming! Sources: “Software Engineering: A Practitioner’s Approach - Fourth Edition” Pressman,
The Mythical Man-Month by Fred Brooks (I) Published 1975, Republished 1995 Experience managing the development of OS/360 in Central Argument –Large.
No Silver Bullet “There is no single development, in either technology or management technique, which by itself promises even one order-of magnitude improvement.
Lawrence Chung Software Engineering: Introduction 1 Module 1: Introduction to Software Engineering.
What is Software Engineering? And why is it so hard?
1 Pertemuan > > Matakuliah: >/ > Tahun: > Versi: >
No Silver Bullet Essence and Accidents of Software Engineering By Frederick P. Brooks Frederick P. Brooks Presentation by Yan Qi
R R R CSE870: Advanced Software Engineering (Cheng): Intro to Software Engineering1 Advanced Software Engineering Dr. Cheng Overview of Software Engineering.
Software Engineering About the Course Software Engineering Qutaibah Malluhi Computer Science and Engineering Department Qatar University.
1 Pertemuan 18 Penemuan Fakta Matakuliah: >/ > Tahun: > Versi: >
1 Pertemuan 9 Department Organization Matakuliah:A0274/Pengelolaan Fungsi Audit Sistem Informasi Tahun: 2005 Versi: 1/1.
Course Introduction and Overview of Software Engineering Richard N. Taylor ICS 221 Fall 2002.
SE 555 – Software Requirements & Specifications Introduction
3-Jul-15Software Engineering1 IS F341 : Software Engineering Dr. Yashvardhan Sharma Assistant Professor, CSIS Department, BITS-Pilani.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 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.
CS4/542- Software Engineering  Software Design and Development  Required Text -- Code Complete by Steve McConnell  (Focuses on the problems of designing.
Gerardo Schneider Department of Informatics University of Oslo Oslo, March 2009.
Software Engineering Introduction. Why are you here? …alternatively, why do we think you need to be here? Why a course on software engineering? How is.
Essence and Accident in Software Engineering By: Mike Hastings.
1 Software Engineering CEN5035 copyright © 1996, 2001 R.S. Pressman & Associates, Inc.
Guide to the Software Engineering Body of Knowledge Chapter 1 - Introduction.
Software Project Management
Pertemuan 5 Introduction to Agile Software Development Mata kuliah: T0144 – Advanced Topics in Software Engineering Tahun: 2010.
Objectives of the Lecture
Software System Engineering: A tutorial
Ch. 101 Epilogue. Ch. 102 Outline What will be the future of the field? What is the impact of SE on society? What ethical issues are raised by SE?
“No Silver Bullet” - refired
 CS 5380 Software Engineering. Course Description  This course will survey software engineering methods and processes, including requirements, architecture,
Introduction to Software Engineering
Software Software is omnipresent in the lives of billions of human beings. Software is an important component of the emerging knowledge based service.
CSCI-383 Object-Oriented Programming & Design Lecture 1.
Software Engineering Lecture # 1. What is Software? 2 Software is a set of items or objects that includes: programs data documents.
Lecture 1Software Engineering1 (Trimester I Session 2002/2003) Lecturer / Tutor Name : Mr. R. Logeswaran
Software Engineering EKT 420 MOHAMED ELSHAIKH KKF 8A – room 4.
Chapter 1: Introduction Omar Meqdadi SE 2730 Lecture 1 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
Chapter 1. Introduction.
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.
Pertemuan 10 Enterprise Application Patterns Mata kuliah: T0144 – Advanced Topics in Software Engineering Tahun: 2010.
Software Engineering. Introduction Objective To familiarize students to the fundamental concepts, techniques, processes, methods and tools of Software.
Introduction to Software Engineering. Why SE? Software crisis manifested itself in several ways [1]: ◦ Project running over-time. ◦ Project running over-budget.
Chapter 2 – Software Processes Lecture 1 Chapter 2 Software Processes1.
MNP1163 (Software Construction).  SDLC and Construction Models  Construction Planning  Construction Measurement.
Software Engineering Lecture # 1. What is Software? 2 Software is a set of items or objects that includes: programs data documents.
CSPC 464 Fall 2014 Son Nguyen.  Attendance/Roster  Introduction ◦ Instructor ◦ Students  Syllabus  Q & A.
Pertemuan 12 Refactoring Mata kuliah: T0144 – Advanced Topics in Software Engineering Tahun: 2010.
Teaching slides Chapter 1. Chapter 1: Introduction Introduction Components of a computer Building the software products What is software engineering?
© Chinese University, CSE Dept. Software Engineering / Software Engineering Topic 1: Software Engineering: A Preview Your Name: ____________________.
Software Design and Development Development Methodoligies Computing Science.
Introduction to Software Project Management Lecture1.
Copyright © Curt Hill Software Development Methodology What do you need to know?
Advanced Software Engineering Dr. Cheng
Pertemuan 22 The Business Views of the Technology Architecture
Project Management (x470)
Pertemuan 08 Design Patterns & Anti-Patterns
Software Process Improvement
Rekayasa Perangkat Lunak
Informatics 43 – March 31, 2016.
Introduction to Software Engineering
Software engineering Lecturer: Nareena.
An Introduction to Software Engineering
UFCE8V-20-3 Information Systems Development SHAPE Hong Kong 2010/11
Rekayasa Perangkat Lunak
Overview of BSSE at Rose-Hulman Institute of Technology
Logical Architecture & UML Package Diagrams
Presentation transcript:

Pertemuan 1 Introduction to Software Engineering Mata kuliah: T0144 – Advanced Topics in Software Engineering Tahun: 2010

3 Learning Outcomes Pada akhir pertemuan ini, diharapkan : Mahasiswa dapat menjelaskan Definisi, Tujuan, dan Peranan Software Engineering sebagai Disiplin Ilmu

4 Outline Material Software Engineering Definition Objectives of Software Engineering Software Engineering vs Computer Science Why do we need Software Engineering? SE Sub Disciplines Course Overview

5 Software Engineering Software engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software, and the study of these approaches; that is, the application of engineering to software.

Objectives of Software Engineering A profession and field of study dedicated to creating software that is of higher quality, more affordable, maintainable, and quicker to build.

Software Engineering vs Computer Science Computer Science puts a lot of emphasis on Programming. A Software Engineer needs to know Programming, but it is not enough. A good Software Engineer not only require good technical skills but also “soft skills”.

Art vs Science Is Programming an Art? Creative + Intuitive vs Systematic + Scientific “Software Craftmanship” is an approach to software development that emphasizes the coding skills of the software developers themselves. It is a response by software developers to the perceived ills of the mainstream software industry, including the prioritization of financial concerns over code quality.

“Software Crisis” The term was used to describe the impact of rapid increases in computer power and the complexity of the problems which could be tackled. In essence, it refers to the difficulty of writing correct, understandable, and verifiable computer programs. The roots of the software crisis are complexity, expectations, and change.

Signs of “Software Crisis” Projects running over-budget. Projects running over-time. Software was very inefficient. Software was of low quality. Software often did not meet requirements. Projects were unmanageable and code difficult to maintain. Software was never delivered.

“no silver bullet” SE tries to answer these challenges Methodologies, Process, Best Practices But there’s no magic silver bullet that can solve everything Brooks argues that "there is no single development, in either technology or management technique, which by itself promises even one order of magnitude [tenfold] improvement within a decade in productivity, in reliability, in simplicity." He also states that "we cannot expect ever to see two-fold gains every two years" in software development, like there is in hardware development.

SE Sub Disciplines (1/3) 1.Software requirements: The elicitation, analysis, specification, and validation of requirements for software. 2.Software design: The design of software is usually done with Computer-Aided Software Engineering (CASE) tools and use standards for the format, such as the Unified Modeling Language (UML). 3.Software development: The construction of software through the use of programming languages.

SE Sub Disciplines (2/3) 4.Software testing: an empirical investigation conducted to provide stakeholders with information about the quality of the product or service 5.Software maintenance: Software systems often have problems and need enhancements for a long time after they are first completed. This subfield deals with those problems. 6.Software configuration management: Since software systems are very complex, their configuration (such as versioning and source control) have to be managed in a standardized and structured method.

SE Sub Disciplines (3/3) 7.Software engineering management: The management of software systems borrows heavily from project management, but there are nuances encountered in software not seen in other management disciplines. 8.Software development process: The process of building software is hotly debated among practitioners with the main paradigms being agile or waterfall. 9.Software engineering tools, i.e. CASE tools. 10.Software quality : measures how well software is designed (quality of design), and how well the software conforms to that design (quality of conformance).

What we will cover in this course Software Design (Architecture) Software Development Software Development Process Software Engineering Tools

16 References Guide to the Software Engineering Body of Knowledge Version. IEEE Computer Society. p. 1–1. ISBN Software Engineering on Wikipedia Art and Computer Programming Art In programming – Andrew Hunt & David Thomas The Mythical Man-Month: Essays on Software Engineering, Anniversary Edition (2nd Edition) - Frederick P. Brooks