Introduction to Software Engineering

Size: px
Start display at page:

Download "Introduction to Software Engineering"

Transcription

1 Introduction to Software Engineering Somnuk Keretho, Assistant Professor Department of Computer Engineering Faculty of Engineering, Kasetsart University URL: Somnuk Keretho/Kasetsart University

2 Outline of this presentation Scope of Software Engineering Object-Oriented Software Development Software Process Software Life-Cycle Models Object Orientation Software Quality Assessment Reference to Chapter 1/2/3 of Software Engineering with JAVA, S.R. Schach, McGraw-Hill, Somnuk Keretho/Kasetsart University 2

3 Scope of Software Engineering Software engineering is a discipline whose aim is the production of fault-free software, that is delivered on time, within budget, and satisfies the user s needs. Somnuk Keretho/Kasetsart University 3

4 Scope of Software Engineering Historical Aspects: 1967, a NATO group coined the term Software Engineering 1968 NATO Software Engineering Conference concurred that Software production should be an engineering-like activity. Using philosophies and paradigms of established engineering disciplines to solve Software Crisis: that the quality of software was generally unacceptably low and that deadlines and cost limits were not being met. Somnuk Keretho/Kasetsart University 4

5 Scope of Software Engineering Economic Aspects Software Engineering v.s. Computer Science The computer scientist investigates several ways to produce software, some good and some bad. But the software engineer is interested in only those techniques that make sound economic sense. For example: A coding technique that can execute very efficiently but with higher maintenance cost may not be a good choice. Somnuk Keretho/Kasetsart University 5

6 Scope of Software Engineering Maintenance Aspects Software Life Cycle / Software Process Requirements Phase Specification (Analysis) Phase Planning Phase Design Phase Implementation Phase Integration Phase Maintenance Phase (highest cost among all these phases) Corrective, Perfective, and Adaptive Maintenance Retirement Somnuk Keretho/Kasetsart University 6

7 Scope of Software Engineering Maintenance is so important, a major aspect of software engineering consists of techniques, tools, and practices that lead to a reduction in maintenance cost. Maintenance 67% Requirement 2% Specification 4% Planning 1% Design 6% Module Coding 5% Module Testing 7% Integration 8% Maintenance 76% Approximate relative costs of the phases of the software life cycle. Somnuk Keretho/Kasetsart University 7

8 Scope of Software Engineering Specification and Design Aspects Software professionals are humans, and humans can make error. The fact that so many faults are introduced early in the software life cycle, highlights another important aspects of software engineering, namely, techniques that yield better specifications and designs. For example, reducing specification and design faults by 10% will reduce the overall number of faults by 6-7%. Somnuk Keretho/Kasetsart University 8

9 Scope of Software Engineering Team Programming Aspects Most software being developed and maintained by a team of software engineers Scope of software engineering must also include techniques for ensuring that teams are properly organized and managed. For example, team programming leads to interface problems among code components and communication problems among team members. Somnuk Keretho/Kasetsart University 9

10 Scope of Software Engineering Several techniques have been suggested to help solve the software crisis. ~ : Structured Paradigm Structured Systems Analysis, Composite/Structured Design, Structured Programming, Structured Testing Lead to major improvements for software industry. But only good for small programs (say, 5,000-50,000 lines of codes) Not scale well with today larger programs (say, ,000,000 LOC) Not so good in software maintenance aspects, (for instance, because of the separation of action-oriented and data-oriented in structured paradigm). Object-Oriented Paradigm An object is a unified software component that incorporates both data and actions that operate of those data. Somnuk Keretho/Kasetsart University 10

11 Scope of Software Engineering Structured Paradigm Requirement Phase Specification (Analysis) Phase Planning Phase Design Phase Implementation Phase Integration Phase Maintenance Phase Retirement Object-Oriented Paradigm Requirement Phase Object-Oriented Analysis Phase Planning Phase Object-Oriented Design Phase Object-Oriented Programming Phase Integration Phase Maintenance Phase Retirement Comparison of life cycles of structures paradigm and object-oriented paradigm. Somnuk Keretho/Kasetsart University 11

12 Object-Oriented Software Development Three key words. Software Development Object Orientation Let us look at each in turn Somnuk Keretho/Kasetsart University 12

13 Software Programs Documentation during the development of programs (e.g. specification) Primary aids for running the programs (e.g. user manuals) Secondary aids for running the programs (e.g. key boards overlays) Software is not just programs! Somnuk Keretho/Kasetsart University 13

14 Software Life Cycle Software is like humans. It has a life cycle. Software in a system is conceptualized first. It becomes obsolescent at the end. The period in between is called the software life cycle. Somnuk Keretho/Kasetsart University 14

15 Software Life Cycle Models Build-and-Fix Model Waterfall Model Rapid prototyping model Incremental Model Spiral Model Concurrent Development Model Formal Methods Model For the first four items, please refer to Chapter 3 of Software Engineering with JAVA, S.R. Schach, McGraw-Hill, Somnuk Keretho/Kasetsart University 15

16 Built-and-Fix Model Unfortunately, many s/w products are developed with built-and-fix model. Without specification or any attempt in design, just build a product, and reworked as many times needed to satisfy the customer. Unsatisfactory for any size of s/w development, we better specify the various phases of software process. Somnuk Keretho/Kasetsart University 16

17 Why use a life cycle model? Life cycle model breaks down the development process into phases or stages. This is because software development is complex. Breaking down the development process makes it easier to manage. Each phase can be performed in various ways. Somnuk Keretho/Kasetsart University 17

18 Waterfall Model Requirement Verify Changed Requirements verify Specification Verify Planning Verify Design Verify Implementation Testing Integration Testing Development Maintenance Operation Mode Retirement Somnuk Keretho/Kasetsart University 18

19 Rapid Prototyping Model A rapid prototype is a working model that is functionally equivalent to a subset of the product (internal structure is not concerned yet). The sole use of rapid prototyping is to determine what the client s real needs are, construct the rapid prototype as rapidly as possible to speed up the s/w development process. Somnuk Keretho/Kasetsart University 19

20 Rapid Prototyping Model Rapid Prototype Verify Changed Requirements verify Specification Verify Planning Verify Design Verify Implementation Testing Integration Testing Development Maintenance Operation Mode Retirement Somnuk Keretho/Kasetsart University 20

21 Incremental Model The s/w product is designed, implemented, integrated, and tested as a series of incremental builds, where a build consists of code pieces from various modules interacting to provide a specific functional capability. It is sometimes necessary to re-specify, re-design, re-code, or at worst, throw away what has already been completed and start again. Somnuk Keretho/Kasetsart University 21

22 Incremental Model Requirement Verify Specification Verify Planning Verify Architectural Design Verify For each build: Perform detailed design, implementation, and integration. Test. Deliver to client. Development Maintenance Operation Mode Retirement Somnuk Keretho/Kasetsart University 22

23 Spiral Model The idea of minimizing risk via the use of prototypes and other means is the concept underlying the spiral model. A simplified spiral model is as a waterfall model with each phase preceded by risk analysis. Before commencing each phase, an attempt is made to control (resolve) the risks. If it is impossible to resolve all the significant risks at a stage, then the project is immediately terminated. Somnuk Keretho/Kasetsart University 23

24 Full Spiral Model [Boehm, IEEE 1998] Review Determine objectives, alternatives, constraints Commitment Partition Plan next phase Requirement plan life-cycle plan Cumulative cost Development Plan Integration and Test Plan Progress through steps Risk Analysis Concept of Operation Requirement Validation Design validation and verification Implementation Risk Analysis Risk Analysis Prototype 1 Prototype 2 Prototype 3 Software Requirements Acceptance Test Evaluate alternatives, identify, resolve risks Risk Analysis Operational Prototype Simulations, models, benchmarks Software Product Design Integration Test Unit Test Detailed Design Code Develop, verify next-level product Somnuk Keretho/Kasetsart University 24

25 Software Development Software is developed using a life cycle model. Just a life cycle model is insufficient for development. We need: A broad philosophy A set of tools which support the philosophy. A language which supports the philosophy. Somnuk Keretho/Kasetsart University 25

26 Software Development Paradigm A paradigm provides a general approach to work during each phase of the life cycle model. A paradigm is a broad philosophy. A paradigm is not a specific model. Somnuk Keretho/Kasetsart University 26

27 Some Software Development Paradigms Functional Composition Logic Programming Structured Development Object Orientation Somnuk Keretho/Kasetsart University 27

28 Functional Development A problem is expressed in termed of a set of mathematical functions. e.g. Double(x) = Add(x, x). An algorithm is not specified. Language such as Miranda, Gofer, Haskell support this paradigm. Poor execution speed. Somnuk Keretho/Kasetsart University 28

29 Logic Programming Consists of a problem description only. e.g. Factorial(0) = 1. Factorial(N) = N x Factorial(N -1). Doesn t describe how to solve the problem. Languages Prolog & Lisp support this paradigm. Somnuk Keretho/Kasetsart University 29

30 Structured Development Also called SASD, SADT & Functional Decomposition. Breaks the system into processes & decomposes them. Languages C, Fortran, Pascal, Cobol, Basic and a lot more support this paradigm. By far the most popular paradigm. Somnuk Keretho/Kasetsart University 30

31 Object Orientation Most recent paradigm. Treats a problem as a collection of objects. Becoming very popular now. More and more languages support this paradigm now. Somnuk Keretho/Kasetsart University 31

32 Tools for OO Rambaugh (OMT) Coad-Yourdon Booch UML Somnuk Keretho/Kasetsart University 32

33 Languages for OO C++ Smalltalk Eiffel Object C Object Pascal Java Somnuk Keretho/Kasetsart University 33

34 Software Quality Assessment CMM by SEI ISO 9000 Somnuk Keretho/Kasetsart University 34

Scope of OOSE. A. Starts. CMPSC 487 Lecture 01 Topics: Schach - Chap 1. The Scope of Object-Oriented Software Engineering

Scope of OOSE. A. Starts. CMPSC 487 Lecture 01 Topics: Schach - Chap 1. The Scope of Object-Oriented Software Engineering Scope of OOSE CMPSC 487 Lecture 01 Topics: Schach - Chap 1. The Scope of Object-Oriented Software Engineering A. Starts What is dream of software developer or computer scientists? What is dream of software

More information

Object-oriented Analysis and Design

Object-oriented Analysis and Design Object-oriented Analysis and Design Stages in a Software Project Requirements Writing Understanding the Client s environment and needs. Analysis Identifying the concepts (classes) in the problem domain

More information

Requirements Gathering using Object- Oriented Models

Requirements Gathering using Object- Oriented Models Requirements Gathering using Object- Oriented Models Cycle de vie d un logiciel Software Life Cycle The "software lifecycle" refers to all stages of software development from design to disappearance. The

More information

Computer Science: Disciplines. What is Software Engineering and why does it matter? Software Disasters

Computer Science: Disciplines. What is Software Engineering and why does it matter? Software Disasters Computer Science: Disciplines What is Software Engineering and why does it matter? Computer Graphics Computer Networking and Security Parallel Computing Database Systems Artificial Intelligence Software

More information

Software Life Cycle Models

Software Life Cycle Models 1 Software Life Cycle Models The goal of Software Engineering is to provide models and processes that lead to the production of well-documented maintainable software in a manner that is predictable. 2

More information

Computer Science: Who Cares? Computer Science: It Matters. Computer Science: Disciplines

Computer Science: Who Cares? Computer Science: It Matters. Computer Science: Disciplines Computer Science: Who Cares? Computer Graphics (1970 s): One department, at one university Several faculty, a few more students $5,000,000 grant from ARPA Original slides by Chris Wilcox, Edited and extended

More information

Course Introduction and Overview of Software Engineering. Richard N. Taylor Informatics 211 Fall 2007

Course Introduction and Overview of Software Engineering. Richard N. Taylor Informatics 211 Fall 2007 Course Introduction and Overview of Software Engineering Richard N. Taylor Informatics 211 Fall 2007 Software Engineering A discipline that deals with the building of software systems which are so large

More information

Information Systemss and Software Engineering. Computer Science & Information Technology (CS)

Information Systemss and Software Engineering. Computer Science & Information Technology (CS) GATE- 2016-17 Postal Correspondence 1 Information Systemss and Software Engineering Computer Science & Information Technology (CS) 20 Rank under AIR 100 Postal Correspondence Examination Oriented Theory,

More information

UNIT-III LIFE-CYCLE PHASES

UNIT-III LIFE-CYCLE PHASES INTRODUCTION: UNIT-III LIFE-CYCLE PHASES - If there is a well defined separation between research and development activities and production activities then the software is said to be in successful development

More information

UNIT VIII SYSTEM METHODOLOGY 2014

UNIT VIII SYSTEM METHODOLOGY 2014 SYSTEM METHODOLOGY: UNIT VIII SYSTEM METHODOLOGY 2014 The need for a Systems Methodology was perceived in the second half of the 20th Century, to show how and why systems engineering worked and was so

More information

Course Outline Department of Computing Science Faculty of Science

Course Outline Department of Computing Science Faculty of Science Course Outline Department of Computing Science Faculty of Science COMP 2920 3 Software Architecture & Design (3,1,0) Fall, 2015 Instructor: Phone/Voice Mail: Office: E-Mail: Office Hours: Calendar /Course

More information

IS 525 Chapter 2. Methodology Dr. Nesrine Zemirli

IS 525 Chapter 2. Methodology Dr. Nesrine Zemirli IS 525 Chapter 2 Methodology Dr. Nesrine Zemirli Assistant Professor. IS Department CCIS / King Saud University E-mail: Web: http://fac.ksu.edu.sa/nzemirli/home Chapter Topics Fundamental concepts and

More information

Avoiding the Problems

Avoiding the Problems Information Systems Concepts Avoiding the Problems Roman Kontchakov Birkbeck, University of London Based on Chapter 3 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and Design Using UML,

More information

A New - Knot Model for Component Based Software Development

A New - Knot Model for Component Based Software Development www.ijcsi.org 480 A New - Knot Model for Component Based Software Development Rajender Singh Chhillar 1, Parveen Kajla 2 1 Department of Computer Science & Applications, Maharshi Dayanand University, Rohtak-124001,

More information

By the end of this chapter, you should: Understand what is meant by engineering design. Understand the phases of the engineering design process.

By the end of this chapter, you should: Understand what is meant by engineering design. Understand the phases of the engineering design process. By the end of this chapter, you should: Understand what is meant by engineering design. Understand the phases of the engineering design process. Be familiar with the attributes of successful engineers.

More information

The Evolution Tree: A Maintenance-Oriented Software Development Model

The Evolution Tree: A Maintenance-Oriented Software Development Model The Evolution Tree: A Maintenance-Oriented Software Development Model Amir Tomer The Technion Israel Institute of Technology, Haifa, Israel Stephen R. Schach Vanderbilt University, Nashville, Tennessee,

More information

UNIT IV SOFTWARE PROCESSES & TESTING SOFTWARE PROCESS - DEFINITION AND IMPLEMENTATION

UNIT IV SOFTWARE PROCESSES & TESTING SOFTWARE PROCESS - DEFINITION AND IMPLEMENTATION UNIT IV SOFTWARE PROCESSES & TESTING Software Process - Definition and implementation; internal Auditing and Assessments; Software testing - Concepts, Tools, Reviews, Inspections & Walkthroughs; P-CMM.

More information

Introduction to Software Requirements and Design

Introduction to Software Requirements and Design Introduction to Software Requirements and Software Requirements and CITS 4401 Lecture 1 Outline 1. What to expect in CITS4401 2. SE: what are the problems? 3. Some important concepts Abstraction Product

More information

VALLIAMMAI ENGNIEERING COLLEGE SRM Nagar, Kattankulathur DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING

VALLIAMMAI ENGNIEERING COLLEGE SRM Nagar, Kattankulathur DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING VALLIAMMAI ENGNIEERING COLLEGE SRM Nagar, Kattankulathur 603203. DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING QUESTION BANK Degree & Branch : B.E C.S.E. Year & Semester : II / IV Section : CSE 1 & 2

More information

Application of Definitive Scripts to Computer Aided Conceptual Design

Application of Definitive Scripts to Computer Aided Conceptual Design University of Warwick Department of Engineering Application of Definitive Scripts to Computer Aided Conceptual Design Alan John Cartwright MSc CEng MIMechE A thesis submitted in compliance with the regulations

More information

Code Complete 2: Realities of Modern Software Construction

Code Complete 2: Realities of Modern Software Construction Code Complete 2: Realities of Modern Software Construction www.construx.com 2004-2005 2005 Construx Software Builders, Inc. All Rights Reserved. Construx Delivering Software Project Success R Really,Really

More information

Systems Engineering Overview. Axel Claudio Alex Gonzalez

Systems Engineering Overview. Axel Claudio Alex Gonzalez Systems Engineering Overview Axel Claudio Alex Gonzalez Objectives Provide additional insights into Systems and into Systems Engineering Walkthrough the different phases of the product lifecycle Discuss

More information

A FRAMEWORK FOR PERFORMING V&V WITHIN REUSE-BASED SOFTWARE ENGINEERING

A FRAMEWORK FOR PERFORMING V&V WITHIN REUSE-BASED SOFTWARE ENGINEERING A FRAMEWORK FOR PERFORMING V&V WITHIN REUSE-BASED SOFTWARE ENGINEERING Edward A. Addy eaddy@wvu.edu NASA/WVU Software Research Laboratory ABSTRACT Verification and validation (V&V) is performed during

More information

THE APPLICATION OF SYSTEMS ENGINEERING ON THE BUILDING DESIGN PROCESS

THE APPLICATION OF SYSTEMS ENGINEERING ON THE BUILDING DESIGN PROCESS THE APPLICATION OF SYSTEMS ENGINEERING ON THE BUILDING DESIGN PROCESS A.Yahiaoui 1, G. Ulukavak Harputlugil 2, A.E.K Sahraoui 3 & J. Hensen 4 1 & 4 Center for Building & Systems TNO-TU/e, 5600 MB Eindhoven,

More information

Introduction to Software Engineering

Introduction to Software Engineering Introduction to Software Engineering Lesson 1 Basic Issues in Software Engineering Specific Instructional Objectives At the end of this lesson the student will be able to: Identify the scope and necessity

More information

Fundamentals of Systems Engineering. Human-Systems Engineering

Fundamentals of Systems Engineering. Human-Systems Engineering Fundamentals of Systems Engineering Human-Systems Engineering V Model Oct 23, 2009 Stakeholder Requirements Definition System Architecture Concept Generation Systems Engineering g Overview Cost and Schedule

More information

IECI Chapter Japan Series Vol. 5 No. 2, 2003 ISSN

IECI Chapter Japan Series Vol. 5 No. 2, 2003 ISSN IECI Chapter Japan Series Vol. 5 No. 2, 2003 ISSN 1344-7491 Proceedings of the IECI Japan Workshop 2003 IJW-2003 April 20 th, 2003 Chofu Bunka-Kaikan Tazukuri Tokyo, Japan Organized by Indonesian Society

More information

Introduction to adoption of lean canvas in software test architecture design

Introduction to adoption of lean canvas in software test architecture design Introduction to adoption of lean canvas in software test architecture design Padmaraj Nidagundi 1, Margarita Lukjanska 2 1 Riga Technical University, Kaļķu iela 1, Riga, Latvia. 2 Politecnico di Milano,

More information

CHAPTER 1 INTRODUCTION TO THE GUIDE

CHAPTER 1 INTRODUCTION TO THE GUIDE CHAPTER 1 INTRODUCTION TO THE GUIDE In spite of the millions of software professionals worldwide and the ubiquitous presence of software in our society, software engineering has not yet reached the status

More information

Software Project Management 4th Edition. Chapter 3. Project evaluation & estimation

Software Project Management 4th Edition. Chapter 3. Project evaluation & estimation Software Project Management 4th Edition Chapter 3 Project evaluation & estimation 1 Introduction Evolutionary Process model Spiral model Evolutionary Process Models Evolutionary Models are characterized

More information

ACE3 Working Group Session, March 2, 2005

ACE3 Working Group Session, March 2, 2005 ACE3 Working Group Session, March 2, 2005 Intensive s The Synergy of Architecture, Life Cycle Models, and Reviews Dr. Peter Hantos The Aerospace Corporation 2003-2005. The Aerospace Corporation. All Rights

More information

TELEMETRY SOFTWARE DEVELOPMENT LIFE CYCLE

TELEMETRY SOFTWARE DEVELOPMENT LIFE CYCLE TELEMETRY SOFTWARE DEVELOPMENT LIFE CYCLE Item Type text; Proceedings Authors Campbell, Alan B. Publisher International Foundation for Telemetering Journal International Telemetering Conference Proceedings

More information

Information Technology Fluency for Undergraduates

Information Technology Fluency for Undergraduates Response to Tidal Wave II Phase II: New Programs Information Technology Fluency for Undergraduates Marti Hearst, Assistant Professor David Messerschmitt, Acting Dean School of Information Management and

More information

Radically better software development with Extreme Programming. Carl Erickson Atomic Object LLC October 2002

Radically better software development with Extreme Programming. Carl Erickson Atomic Object LLC October 2002 Radically better software development with Extreme Programming Carl Erickson Atomic Object LLC October 2002 The software crisis Software is all too often Over budget Late to market Buggy Not accepted by

More information

Testing in the Lifecycle

Testing in the Lifecycle Testing in the Lifecycle Conrad Hughes School of Informatics Slides thanks to Stuart Anderson 19 January 2010 Software Testing: Lecture 3 1 Software was difficult to get right in 1982 2 It was still difficult

More information

Software Development Lifecycle

Software Development Lifecycle Software Development Lifecycle The Power of Process Outline What is a software development lifecycle? Why do we need a lifecycle process? Lifecycle models and their tradeoffs o Code-and-fix o Waterfall

More information

A New Approach to Software Development Fusion Process Model

A New Approach to Software Development Fusion Process Model J. Software Engineering & Applications, 2010, 3, 998-1004 doi:10.4236/jsea.2010.310117 Published Online October 2010 (http://www.scirp.org/journal/jsea) A New Approach to Software Development Fusion Process

More information

Policy-Based RTL Design

Policy-Based RTL Design Policy-Based RTL Design Bhanu Kapoor and Bernard Murphy bkapoor@atrenta.com Atrenta, Inc., 2001 Gateway Pl. 440W San Jose, CA 95110 Abstract achieving the desired goals. We present a new methodology to

More information

Introduction to Software Engineering (Week 1 Session 2)

Introduction to Software Engineering (Week 1 Session 2) Introduction to Software Engineering (Week 1 Session 2) What is Software Engineering? Engineering approach to develop software. Building Construction Analogy. Systematic collection of past experience:

More information

Service-Oriented Software Engineering - SOSE (Academic Year 2015/2016)

Service-Oriented Software Engineering - SOSE (Academic Year 2015/2016) Service-Oriented Software Engineering - SOSE (Academic Year 2015/2016) Teacher: Prof. Andrea D Ambrogio Objectives: provide methods and techniques to regard software production as the result of an engineering

More information

Project Lead the Way: Civil Engineering and Architecture, (CEA) Grades 9-12

Project Lead the Way: Civil Engineering and Architecture, (CEA) Grades 9-12 1. Students will develop an understanding of the J The nature and development of technological knowledge and processes are functions of the setting. characteristics and scope of M Most development of technologies

More information

A MODEL-DRIVEN REQUIREMENTS ENGINEERING APPROACH TO CONCEPTUAL SATELLITE DESIGN

A MODEL-DRIVEN REQUIREMENTS ENGINEERING APPROACH TO CONCEPTUAL SATELLITE DESIGN A MODEL-DRIVEN REQUIREMENTS ENGINEERING APPROACH TO CONCEPTUAL SATELLITE DESIGN Bruno Bustamante Ferreira Leonor, brunobfl@yahoo.com.br Walter Abrahão dos Santos, walter@dss.inpe.br National Space Research

More information

Development of Concurrent Engineering Tool for Early Design of Mechatronics Product

Development of Concurrent Engineering Tool for Early Design of Mechatronics Product 210 Proceedings of the 8th International Conference on Innovation & Management Development of Concurrent Engineering Tool for Early Design of Mechatronics Product Yusuke Odoh, Tatsuya Kasamatsu, Tsuyoshi

More information

Strategic Considerations when Introducing Model Based Systems Engineering

Strategic Considerations when Introducing Model Based Systems Engineering Copyright 2015 by Christoph Bräuchle, Manfred Broy, Dominik Rüchardt. Permission granted to INCOSE to publish and use Strategic Considerations when Introducing Model Based Systems Engineering Christoph

More information

Our Acquisition Challenges Moving Forward

Our Acquisition Challenges Moving Forward Presented to: NDIA Space and Missile Defense Working Group Our Acquisition Challenges Moving Forward This information product has been reviewed and approved for public release. The views and opinions expressed

More information

LL assigns tasks to stations and decides on the position of the stations and conveyors.

LL assigns tasks to stations and decides on the position of the stations and conveyors. 2 Design Approaches 2.1 Introduction Designing of manufacturing systems involves the design of products, processes and plant layout before physical construction [35]. CE, which is known as simultaneous

More information

Hardware-Software Co-Design Cosynthesis and Partitioning

Hardware-Software Co-Design Cosynthesis and Partitioning Hardware-Software Co-Design Cosynthesis and Partitioning EE8205: Embedded Computer Systems http://www.ee.ryerson.ca/~courses/ee8205/ Dr. Gul N. Khan http://www.ee.ryerson.ca/~gnkhan Electrical and Computer

More information

Scientific Certification

Scientific Certification Scientific Certification John Rushby Computer Science Laboratory SRI International Menlo Park, California, USA John Rushby, SR I Scientific Certification: 1 Does The Current Approach Work? Fuel emergency

More information

Component Based Mechatronics Modelling Methodology

Component Based Mechatronics Modelling Methodology Component Based Mechatronics Modelling Methodology R.Sell, M.Tamre Department of Mechatronics, Tallinn Technical University, Tallinn, Estonia ABSTRACT There is long history of developing modelling systems

More information

Design of an Object-Oriented Framework for Measurement Systems

Design of an Object-Oriented Framework for Measurement Systems Design of an Object-Oriented Framework for Measurement Systems Jan Bosch University of Karlskrona/Ronneby Department of Computer Science and Business Administration S-372 25 Ronneby, Sweden e-mail: Jan.Bosch@ide.hk-r.se

More information

Code Complete 2: A Decade of Advances in Software Construction Construx Software Builders, Inc. All Rights Reserved.

Code Complete 2: A Decade of Advances in Software Construction Construx Software Builders, Inc. All Rights Reserved. Code Complete 2: A Decade of Advances in Software Construction www.construx.com 2004 Construx Software Builders, Inc. All Rights Reserved. Construx Delivering Software Project Success Introduction History

More information

Revised April High School Graduation Years 2015, 2016, and 2017

Revised April High School Graduation Years 2015, 2016, and 2017 High School Graduation Years 2015, 2016, and 2017 Engineering Technologies/Technicians CIP 15.9999 Task Grid Secondary Competency Task List 100 ENGINEERING SAFETY. 101 Implement a safety plan. 102 Operate

More information

CONCURRENT ENGINEERING

CONCURRENT ENGINEERING CONCURRENT ENGINEERING S.P.Tayal Professor, M.M.University,Mullana- 133203, Distt.Ambala (Haryana) M: 08059930976, E-Mail: sptayal@gmail.com Abstract It is a work methodology based on the parallelization

More information

CC532 Collaborative System Design

CC532 Collaborative System Design CC532 Collaborative Design Part I: Fundamentals of s Engineering 5. s Thinking, s and Functional Analysis Views External View : showing the system s interaction with environment (users) 2 of 24 Inputs

More information

An Integrated Simulation Method to Support Virtual Factory Engineering

An Integrated Simulation Method to Support Virtual Factory Engineering International Journal of CAD/CAM Vol. 2, No. 1, pp. 39~44 (2002) An Integrated Simulation Method to Support Virtual Factory Engineering Zhai, Wenbin*, Fan, xiumin, Yan, Juanqi, and Zhu, Pengsheng Inst.

More information

Editorial for the Special Issue on Aspects and Model-Driven Engineering

Editorial for the Special Issue on Aspects and Model-Driven Engineering Editorial for the Special Issue on Aspects and Model-Driven Engineering Robert France 1 and Jean-Marc Jézéquel 2 1 Colorado State University, Fort Collins, Colorado, USA, france@cs.colostate.edu, 2 IRISA-Université

More information

An introduction to software development. Dr. C. Constantinides, P.Eng. Computer Science and Software Engineering Concordia University

An introduction to software development. Dr. C. Constantinides, P.Eng. Computer Science and Software Engineering Concordia University An introduction to software development Dr. C. Constantinides, P.Eng. Computer Science and Software Engineering Concordia University What type of projects? Small-scale projects Can be built (normally)

More information

A Theory about the Structure of GTSEs

A Theory about the Structure of GTSEs A Theory about the Structure of GTSEs Dewayne E Perry ENS 623 Perry@ece.utexas.edu 1 Separation of Concerns An important separation of concerns distinguish between Theories about software engineers (SEs)

More information

Software Requirements

Software Requirements Embedded Systems Software Training Center Software Requirements Copyright 2011 DSR Corporation Agenda 1. The Requirements Process 2. Requirements Documentation 3. Requirements Quality 4. Requirements Notations

More information

Refinement and Evolution Issues in Bridging Requirements and Architectures

Refinement and Evolution Issues in Bridging Requirements and Architectures Refinement and Evolution Issues between Requirements and Product Line s 1 Refinement and Evolution Issues in Bridging Requirements and s Alexander Egyed, Paul Gruenbacher, and Nenad Medvidovic University

More information

INTEGRATING DESIGN AND ENGINEERING, II: PRODUCT ARCHITECTURE AND PRODUCT DESIGN

INTEGRATING DESIGN AND ENGINEERING, II: PRODUCT ARCHITECTURE AND PRODUCT DESIGN INTERNATIONAL CONFERENCE ON ENGINEERING AND PRODUCT DESIGN EDUCATION 13-14 SEPTEMBER 2007, NORTHUMBRIA UNIVERSITY, NEWCASTLE UPON TYNE, UNITED KINGDOM INTEGRATING DESIGN AND ENGINEERING, II: PRODUCT ARCHITECTURE

More information

Separation of Concerns in Software Engineering Education

Separation of Concerns in Software Engineering Education Separation of Concerns in Software Engineering Education Naji Habra Institut d Informatique University of Namur Rue Grandgagnage, 21 B-5000 Namur +32 81 72 4995 nha@info.fundp.ac.be ABSTRACT Separation

More information

NAVAL POSTGRADUATE SCHOOL THESIS

NAVAL POSTGRADUATE SCHOOL THESIS NAVAL POSTGRADUATE SCHOOL MONTEREY, CALIFORNIA THESIS ANALYSIS OF TLCHARTS FOR WEAPON SYSTEMS SOFTWARE DEVELOPMENT by Kadir Alpaslan Demir December 2005 Thesis Advisor: Thesis Co-Advisor: Doron Drusinsky

More information

STUDY ON FIREWALL APPROACH FOR THE REGRESSION TESTING OF OBJECT-ORIENTED SOFTWARE

STUDY ON FIREWALL APPROACH FOR THE REGRESSION TESTING OF OBJECT-ORIENTED SOFTWARE STUDY ON FIREWALL APPROACH FOR THE REGRESSION TESTING OF OBJECT-ORIENTED SOFTWARE TAWDE SANTOSH SAHEBRAO DEPT. OF COMPUTER SCIENCE CMJ UNIVERSITY, SHILLONG, MEGHALAYA ABSTRACT Adherence to a defined process

More information

Agent-Oriented Software Engineering

Agent-Oriented Software Engineering Agent-Oriented Software Engineering Multiagent Systems LM Sistemi Multiagente LM Ambra Molesini & Andrea Omicini {ambra.molesini, andrea.omicini}@unibo.it Ingegneria Due Alma Mater Studiorum Università

More information

Principled Construction of Software Safety Cases

Principled Construction of Software Safety Cases Principled Construction of Software Safety Cases Richard Hawkins, Ibrahim Habli, Tim Kelly Department of Computer Science, University of York, UK Abstract. A small, manageable number of common software

More information

LSI Design Flow Development for Advanced Technology

LSI Design Flow Development for Advanced Technology LSI Design Flow Development for Advanced Technology Atsushi Tsuchiya LSIs that adopt advanced technologies, as represented by imaging LSIs, now contain 30 million or more logic gates and the scale is beginning

More information

Planning and Organising Two

Planning and Organising Two Planning and Organising Two Quality Assurance and Control Presenter Tony Bosnich 2015 Unitec New Zealand DEPARTMENT OF CONSTRUCTION Quality Learning outcomes 1. Define quality for a part of a project and

More information

Understanding Requirements. Slides copyright 1996, 2001, 2005, 2009, 2014 by Roger S. Pressman. For non-profit educational use only

Understanding Requirements. Slides copyright 1996, 2001, 2005, 2009, 2014 by Roger S. Pressman. For non-profit educational use only Chapter 8 Understanding Requirements Slide Set to accompany Software Engineering: A Practitioner s Approach, 8/e by Roger S. Pressman and Bruce R. Maxim Slides copyright 1996, 2001, 2005, 2009, 2014 by

More information

Computer Science and Philosophy Information Sheet for entry in 2018

Computer Science and Philosophy Information Sheet for entry in 2018 Computer Science and Philosophy Information Sheet for entry in 2018 Artificial intelligence (AI), logic, robotics, virtual reality: fascinating areas where Computer Science and Philosophy meet. There are

More information

CS 480: GAME AI TACTIC AND STRATEGY. 5/15/2012 Santiago Ontañón

CS 480: GAME AI TACTIC AND STRATEGY. 5/15/2012 Santiago Ontañón CS 480: GAME AI TACTIC AND STRATEGY 5/15/2012 Santiago Ontañón santi@cs.drexel.edu https://www.cs.drexel.edu/~santi/teaching/2012/cs480/intro.html Reminders Check BBVista site for the course regularly

More information

Systems Engineering Process

Systems Engineering Process Applied Systems Engineering Les Bordelon US Air Force SES Retired NATO Lecture Series SCI-176 Mission Systems Engineering November 2006 An Everyday Process 1 Most Acquisition Documents and Standards say:

More information

Intersections of Philosophy Logic and Biology in Design

Intersections of Philosophy Logic and Biology in Design Intersections of Philosophy Logic and Biology in Design Yiannis Papadopoulos Professor of Computer Science University of Hull UK 5 th IFAC-DCDS Plenary Talk, Cancun, 27 th May 2015 Design Involves Creation

More information

Co-evolution of agent-oriented conceptual models and CASO agent programs

Co-evolution of agent-oriented conceptual models and CASO agent programs University of Wollongong Research Online Faculty of Informatics - Papers (Archive) Faculty of Engineering and Information Sciences 2006 Co-evolution of agent-oriented conceptual models and CASO agent programs

More information

Probability with Set Operations. MATH 107: Finite Mathematics University of Louisville. March 17, Complicated Probability, 17th century style

Probability with Set Operations. MATH 107: Finite Mathematics University of Louisville. March 17, Complicated Probability, 17th century style Probability with Set Operations MATH 107: Finite Mathematics University of Louisville March 17, 2014 Complicated Probability, 17th century style 2 / 14 Antoine Gombaud, Chevalier de Méré, was fond of gambling

More information

Win and Influence Design Engineers--- Change Their Affordability DNA

Win and Influence Design Engineers--- Change Their Affordability DNA Win and Influence Design Engineers--- Change Their Affordability DNA Authors: Timothy G. Morrill Sr. Principal Electrical Engineer Design Performance, Architecture and Testability Department Raytheon Missile

More information

22c181: Formal Methods in Software Engineering. The University of Iowa Spring Propositional Logic

22c181: Formal Methods in Software Engineering. The University of Iowa Spring Propositional Logic 22c181: Formal Methods in Software Engineering The University of Iowa Spring 2010 Propositional Logic Copyright 2010 Cesare Tinelli. These notes are copyrighted materials and may not be used in other course

More information

Evolving a Software Requirements Ontology

Evolving a Software Requirements Ontology Evolving a Software Requirements Ontology Ricardo de Almeida Falbo 1, Julio Cesar Nardi 2 1 Computer Science Department, Federal University of Espírito Santo Brazil 2 Federal Center of Technological Education

More information

INFORMATION AND COMPUTATION HIERARCHY

INFORMATION AND COMPUTATION HIERARCHY INFORMATION AND COMPUTATION HIERARCHY Lang Tong School of Electrical and Computer Engineering Cornell University, Ithaca, NY Acknowledgement: K. Birman, P. Varaiya, T. Mount, R. Thomas, S. Avestimehr,

More information

TRACEABILITY WITHIN THE DESIGN PROCESS

TRACEABILITY WITHIN THE DESIGN PROCESS TRACEABILITY WITHIN THE DESIGN PROCESS USING DESIGN CONTROL METHODOLOGIES TO DRAW THE LINE BETWEEN USER NEEDS AND THE FINAL PRODUCT Kelly A Umstead North Carolina State University kaumstead@ncsu.edu ABSTRACT

More information

Integrity Monitoring? New thinking in the approach to Subsea IMMR. Dr Karl Woods, Snr Subsea Reliability Engineer 22/2/2017

Integrity Monitoring? New thinking in the approach to Subsea IMMR. Dr Karl Woods, Snr Subsea Reliability Engineer 22/2/2017 Integrity Monitoring? New thinking in the approach to Subsea IMMR Dr Karl Woods, Snr Subsea Reliability Engineer 22/2/2017 Disclaimer and important notice This presentation contains forward looking statements

More information

Overview of the Research Process Comments by Dan A. Simunic, UBC

Overview of the Research Process Comments by Dan A. Simunic, UBC Overview of the Research Process Comments by Dan A. Simunic, UBC Craft of Accounting Research Workshop June 2016 Planning a Research Project Idea Research Question(s) What has already been done? Literature

More information

EMC Testing to Achieve Functional Safety

EMC Testing to Achieve Functional Safety Another EMC resource from EMC Standards EMC Testing to Achieve Functional Safety Helping you solve your EMC problems 9 Bracken View, Brocton, Stafford ST17 0TF T:+44 (0) 1785 660247 E:info@emcstandards.co.uk

More information

Software Eng. 2F03: Logic For Software Engineering

Software Eng. 2F03: Logic For Software Engineering Software Eng. 2F03: Logic For Software Engineering Dr. Mark Lawford Dept. of Computing And Software, Faculty of Engineering McMaster University 0-0 Motivation Why study logic? You want to learn some cool

More information

Prototype to product the difficult transition

Prototype to product the difficult transition Prototype to product the difficult transition Case: K-Master Thor Hukkelås, M.Sc. Project Manager DP & Nav Product Development Kongsberg Maritime AS WORLD CLASS through people, technology and dedication

More information

Pragmatic Strategies for Adopting Model-Based Design for Embedded Applications. The MathWorks, Inc.

Pragmatic Strategies for Adopting Model-Based Design for Embedded Applications. The MathWorks, Inc. Pragmatic Strategies for Adopting Model-Based Design for Embedded Applications Larry E. Kendrick, PhD The MathWorks, Inc. Senior Principle Technical Consultant Introduction What s MBD? Why do it? Make

More information

Ingegneria del Software Corso di Laurea in Informatica per il Management. Introduction to software engineering

Ingegneria del Software Corso di Laurea in Informatica per il Management. Introduction to software engineering Ingegneria del Software Corso di Laurea in Informatica per il Management Introduction to software engineering Davide Rossi Dipartimento di Informatica Università di Bologna The problem Software projects

More information

Concurrent Increment Sequencing and Synchronization with Design Structure Matrices in Software- Intensive System Development

Concurrent Increment Sequencing and Synchronization with Design Structure Matrices in Software- Intensive System Development Concurrent Increment Sequencing and Synchronization with Design Structure Matrices in Software- Intensive System Development Dr. Peter Hantos The Aerospace Corporation NDIA Systems Engineering Conference

More information

ENGAGE MSU STUDENTS IN RESEARCH OF MODEL-BASED SYSTEMS ENGINEERING WITH APPLICATION TO NASA SOUNDING ROCKET MISSION

ENGAGE MSU STUDENTS IN RESEARCH OF MODEL-BASED SYSTEMS ENGINEERING WITH APPLICATION TO NASA SOUNDING ROCKET MISSION 2017 HAWAII UNIVERSITY INTERNATIONAL CONFERENCES SCIENCE, TECHNOLOGY & ENGINEERING, ARTS, MATHEMATICS & EDUCATION JUNE 8-10, 2017 HAWAII PRINCE HOTEL WAIKIKI, HONOLULU, HAWAII ENGAGE MSU STUDENTS IN RESEARCH

More information

VLSI testing Introduction

VLSI testing Introduction VLSI testing Introduction Virendra Singh Associate Professor Computer Architecture and Dependable Systems Lab Dept. of Electrical Engineering Indian Institute of Technology Bombay, Mumbai viren@ee.iitb.ac.in

More information

Integrated Product Development: Linking Business and Engineering Disciplines in the Classroom

Integrated Product Development: Linking Business and Engineering Disciplines in the Classroom Session 2642 Integrated Product Development: Linking Business and Engineering Disciplines in the Classroom Joseph A. Heim, Gary M. Erickson University of Washington Shorter product life cycles, increasing

More information

CSE 435: Software Engineering

CSE 435: Software Engineering CSE 435: Software Engineering Dr. James Daly 3501 Engineering Building Office: 3501 EB, by appointment dalyjame at msu dot edu TAs: Vincent Ragusa and Mohammad Roohitavaf Helproom Tuesday: 2-4 pm, Wednesday

More information

Model-Based Systems Engineering Methodologies. J. Bermejo Autonomous Systems Laboratory (ASLab)

Model-Based Systems Engineering Methodologies. J. Bermejo Autonomous Systems Laboratory (ASLab) Model-Based Systems Engineering Methodologies J. Bermejo Autonomous Systems Laboratory (ASLab) Contents Introduction Methodologies IBM Rational Telelogic Harmony SE (Harmony SE) IBM Rational Unified Process

More information

Design Science Research Methods. Prof. Dr. Roel Wieringa University of Twente, The Netherlands

Design Science Research Methods. Prof. Dr. Roel Wieringa University of Twente, The Netherlands Design Science Research Methods Prof. Dr. Roel Wieringa University of Twente, The Netherlands www.cs.utwente.nl/~roelw UFPE 26 sept 2016 R.J. Wieringa 1 Research methodology accross the disciplines Do

More information

Object-Oriented Design

Object-Oriented Design Object-Oriented Design Lecture 2: USDP Overview Department of Computer Engineering Sharif University of Technology 1 Review The Unified Modeling Language (UML) is a standard language for specifying, visualizing,

More information

TDEC for PAM4 Potential TDP replacement for clause 123, and Tx quality metric for future 56G PAM4 shortwave systems

TDEC for PAM4 Potential TDP replacement for clause 123, and Tx quality metric for future 56G PAM4 shortwave systems TDEC for PAM4 Potential TDP replacement for clause 123, and Tx quality metric for future 56G PAM4 shortwave systems 802.3bs ad hoc 19 th April 2016 Jonathan King 1 Introduction Link budgets close if: Tx

More information

Ivica Crnkovic Mälardalen University Department of Computer Science and Engineering

Ivica Crnkovic Mälardalen University Department of Computer Science and Engineering Ivica Crnkovic Mälardalen University Department of Computer Science and Engineering ivica.crnkovic@mdh.se http://www.idt.mdh.se/~icc Page 1, 10/21/2008 Contents What is Software Engineering? i Software

More information

An aspect-oriented approach towards enhancing Optimistic Access Control with Usage Control by. Keshnee Padayachee

An aspect-oriented approach towards enhancing Optimistic Access Control with Usage Control by. Keshnee Padayachee An aspect-oriented approach towards enhancing Optimistic Access Control with Usage Control by Keshnee Padayachee submitted in fulfilment of the requirements for the degree of DOCTOR OF PHILOSOPHY in the

More information

Towards Integrated System and Software Modeling for Embedded Systems

Towards Integrated System and Software Modeling for Embedded Systems Towards Integrated System and Software Modeling for Embedded Systems Hassan Gomaa Department of Computer Science George Mason University, Fairfax, VA hgomaa@gmu.edu Abstract. This paper addresses the integration

More information

An Industrial Application of an Integrated UML and SDL Modeling Technique

An Industrial Application of an Integrated UML and SDL Modeling Technique An Industrial Application of an Integrated UML and SDL Modeling Technique Robert B. France 1, Maha Boughdadi 2, Robert Busser 2 1 Computer Science Department, Colorado State University, Fort Collins, Colorodo,

More information