COM606 Software Systems Engineering and on the Portal Introduction.

Slides:



Advertisements
Similar presentations
Rational Unified Process®
Advertisements

Software Life Cycle and Models
Multimedia Specification Design and Production 2013 / Semester 1 / week 7 Lecturer: Dr. Nikos Gazepidis
The design process IACT 403 IACT 931 CSCI 324 Human Computer Interface Lecturer:Gene Awyzio Room:3.117 Phone:
SEP1 - 1 Introduction to Software Engineering Processes SWENET SEP1 Module Developed with support from the National Science Foundation.
Compiler Construction by Muhammad Bilal Zafar (AP)
Stepan Potiyenko ISS Sr.SW Developer.
Unit 231 Software Engineering Introduction to SWE What is SDLC Phases of SDLC.
Fall 2007CS 225 Introduction to Software Design Chapter 1.
R R R CSE870: Advanced Software Engineering (Cheng): Intro to Software Engineering1 Advanced Software Engineering Dr. Cheng Overview of Software Engineering.
Unit 191 Introduction to Software Engineering The objective of this section is to introduce the subject of software engineering. When you have read this.
Introduction to Software Design Chapter 1. Chapter 1: Introduction to Software Design2 Chapter Objectives To become familiar with the software challenge.
Software Engineering General Project Management Software Requirements
Software process management Module 1 -Introduction to process management Teaching unit 1 – Introduction Ernesto Damiani Free University of Bozen-Bolzano.
Overview of Software Requirements
1 Lecture 5 Introduction to Software Engineering Overview  What is Software Engineering  Software Engineering Issues  Waterfall Model  Waterfall Model.
1/31 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2005] January 22, 2009.
IS550: Software requirements engineering Dr. Azeddine Chikh 4. Validation and management.
Introduction to Software Engineering CS-300 Fall 2005 Supreeth Venkataraman.
1 Software Testing and Quality Assurance Lecture 1 Software Verification & Validation.
1 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2002] January 26, 2006.
Spring 2009CS 225 Introduction to Software Design Chapter 1.
Introduction to Software Design Chapter 1. Chapter 1: Introduction to Software Design2 Chapter Objectives To become familiar with the software challenge.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 8 Slide 1 Software Prototyping l Rapid software development to validate requirements l.
Effective Methods for Software and Systems Integration
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 8 Slide 1 Software Prototyping l Rapid software development to validate requirements.
What is UML? What is UP? [Arlow and Neustadt, 2005] January 23, 2014
Introduction to Software Quality Assurance (SQA)
Chapter 2 Introduction to Requirements Management
Computers & Employment By Andrew Attard and Stephen Calleja.
CSI315 Web Applications and Technology Overview of Systems Development (342)
PGD-1303 Software Project Management?. What is software? Software  Computer programs and associated documentation Documentation includes  requirements.
CS101 Introduction to Computing Lecture SW Development Methodology.
المحاضرة الثالثة. Software Requirements Topics covered Functional and non-functional requirements User requirements System requirements Interface specification.
College of Engineering and Computer Science Computer Science Department CSC 131 Computer Software Engineering Fall 2006 Lecture # 1 (Ch. 1, 2, & 3)
©Ian Sommerville 2000, Mejia-Alvarez 2009 Slide 1 Software Processes l Coherent sets of activities for specifying, designing, implementing and testing.
Introduction to Software Engineering
Introduction to Software Design Chapter 1. Chapter Objectives  To become familiar with the software challenge and the software life cycle  To understand.
Software Life-Cycle Models Somnuk Keretho, Assistant Professor Department of Computer Engineering Faculty of Engineering, Kasetsart University
Chapter 11: Software Prototyping Omar Meqdadi SE 273 Lecture 11 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 8 Slide 1 Software Prototyping l Rapid software development to validate requirements.
The Software Development Life Cycle. Software Development SDLC The Software Development Life-Cycle Sometimes called the program development lifecycle.
Chapter 1: Introduction Omar Meqdadi SE 2730 Lecture 1 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
Software Development Cycle What is Software? Instructions (computer programs) that when executed provide desired function and performance Data structures.
소프트웨어공학 강좌 1 Chap 7. Software Prototyping - Rapid software development to validate requirements -
CE Operating Systems Lecture 3 Overview of OS functions and structure.
Information Systems Engineering. Lecture Outline Information Systems Architecture Information System Architecture components Information Engineering Phases.
Software Engineering Prof. Ing. Ivo Vondrak, CSc. Dept. of Computer Science Technical University of Ostrava
COM606 Software Process Engineering and on the Portal Introduction.
Object-Oriented Software Engineering using Java, Patterns &UML. Presented by: E.S. Mbokane Department of System Development Faculty of ICT Tshwane University.
Lecture 2 –Approaches to Systems Development Method 10/9/15 1.
1 EE29B Feisal Mohammed EE29B: Introduction to Software Engineering Feisal Mohammed Ph: x3156.
Software Prototyping Rapid software development to validate requirements.
Connecting with Computer Science2 Objectives Learn how software engineering is used to create applications Learn some of the different software engineering.
Software Engineering Jon Walker. What is Software Engineering? Why do we call it Software Engineering? Why not just call it programming or software development?
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Software Quality Assurance and Testing Fazal Rehman Shamil.
SOFTWARE PROCESS IMPROVEMENT
Requirements Analysis
Object-Oriented and Classical Software Engineering Eighth Edition, WCB/McGraw-Hill Stephen R. Schach 1.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 1 Slide 1 An Introduction to Software Engineering.
Systems Development Life Cycle
LECTURE 5 Nangwonvuma M/ Byansi D. Components, interfaces and integration Infrastructure, Middleware and Platforms Techniques – Data warehouses, extending.
Advanced Software Engineering Dr. Cheng
Software Quality Control and Quality Assurance: Introduction
Software Prototyping.
Software Requirements
CIS300 System Analysis and Design Methods
IT Systems Analysis & Design
CS101 Introduction to Computing Lecture 20 SW Development Methodology
Presentation transcript:

COM606 Software Systems Engineering and on the Portal Introduction

Engineering The application of knowledge to practical uses such as the design of structures, machines, and systems. Engineering has many specialities such as civil engineering, chemical engineering, mechanical engineering and software engineering.

Software Systems Engineering “The systematic application of scientific and technological knowledge, through the medium of sound engineering principles, to the production of computer programs, and to the requirements definition, functional specification, design description, program implementation, and test methods that lead up to this code”. Answers.com

Knowledge Knowledge of what? PEOPLE PROCESS TECHNOLOGY Project/People Management Programming Languages UML Development Environments Processes for Engineering Project Management Support Improvement

Engineering Principles Testability - It is designed to have a repeatable test that can be performed to ensure that it is as expected. With bridge building, you could test the concerete, the steel, expansion and contraction in hot weather, etc. Maintainability - It is designed to last. A bridge should last twenty years with a designed way to maintain the bridge or safely widen the bridge if so desired. Integrity - It is designed to have structural integrity. A bridge will not just break in half. In memory state must not just become corrupt. External integration - It is designed to have a particular well defined way to integrate with its environment without any confusion. A bridge takes cars. There is a sign that says the maximum tonnage and height of the bridge - no confusion. Ethics - Act primarily in the best interests of (a) the above principles, (b) the users, and (c) the client. If the bridge is going to break and kill people, you cannot sign off on the construction. Management - An engineer is proactively involved in the management of various responsibilities because the ultimate responsibility rests on the engineer. An engineer does not sit on the side listening to builders about bridge building. An engineer is actively involved in listening to builders and will let them do their speciality but is proactive in coordinating the various specialists towards the ultimate goal. Bridge building is typically managed by civil engineers - there are concrete and steel specialists but they are typically coordinated at a design level by the engineer, not by business.

Computer Programs This is what we are applying our knowledge to. A computer program is simply a product of the software engineering process. A product is a work product that is intended for delivery to a customer or end-user. A product can take different forms. A product can be a process or a service. A work product is a useful result of a process (an engineering process) and can take the form of files, documents, products, services, processes. A work product is not necessarily part of a product.

Requirements definition, functional specification, design description, program implementation, and test methods By our earlier definition we are applying our knowledge to the production of computer programs and the use of the activities identified above. These activities have been conveniently arranged for us in what we call a development lifecycle. Engineers use development lifecycles to guide them in the activities necessary to build a product

Simple Waterfall Software Development Lifecycle Software concept requirements development architectural design detailed design coding and debugging system testing

Software Process SDLC does not tell us how to do anything. It informs us of the type of activity to be engaged in and the order of such activities. When we choose a lifecycle for development and decide how we are going to carry out the necessary activities we have a software process (sometimes referred to as a software development methodology). Unfortunately, the industry has confused these many terms. Sometimes a SDLC is referred to as a software process. A software process, however, employs specific practices, tools and techniques with which to carry out the activities identified in a SDLC. The SDLC is not specific about this.

Process Performance Models It is organisations that use software processes in their everyday development of software products and processes. Models exist which identify the type of processes and practices which are necessary in a capable process Organisations can then examine the software processes that they are using and compare these with the processes shown in the model This can then reassure the organisation that its processes are capable Such models are the CMMI-DEV, SPICE and ISO15504 to name just a few

What are we going to be doing in this module? Requirements Engineering Process Models – CMMI DEV V1.2 V1.3 To include the Engineering and Support Processes Improving and Stabilising Processes Verification and Testing Provide some insight into the processes used in the production of a final year project

Books