Object-Oriented Software Engineering Practical Software Development using UML and Java. Chapter 1: Software and Software Engineering

Size: px
Start display at page:

Download "Object-Oriented Software Engineering Practical Software Development using UML and Java. Chapter 1: Software and Software Engineering"

Transcription

1 Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering

2 1.1 The Nature of Software... Software is intangible Hard to understand development effort Software is easy to reproduce Cost is in its development in other engineering products, manufacturing is the costly stage The industry is labor-intensive Hard to automate Lethbridge/Laganière 2001 Chapter 1: Software and Software Engineering 2

3 The Nature of Software... Untrained people can hack something together Quality problems are hard to notice Software is easy to modify People make changes without fully understanding it Software does not wear out It deteriorates by having its design changed: erroneously, or in ways that were not anticipated, thus making it complex Lethbridge/Laganière 2001 Chapter 1: Software and Software Engineering 3

4 The Nature of Software Conclusions Much software has poor design and is getting worse Demand for software is high and rising We are in a perpetual software crisis We have to learn to engineer software Lethbridge/Laganière 2001 Chapter 1: Software and Software Engineering 4

5 Types of Software... Custom For a specific customer Generic Sold on open market Often called COTS (Commercial Off The Shelf) Shrink-wrapped Embedded Built into hardware Hard to change Lethbridge/Laganière 2001 Chapter 1: Software and Software Engineering 5

6 Types of Software Differences among custom, generic and embedded software Custom Generic Embedded Number of copies in use low medium high Total processing power devoted to running this type of software Worldwide annual development effort low high medium high medium low Lethbridge/Laganière 2001 Chapter 1: Software and Software Engineering 6

7 Types of Software Real time software E.g. control and monitoring systems Must react immediately Safety often a concern Data processing software Used to run businesses Accuracy and security of data are key Some software has both aspects Lethbridge/Laganière 2001 Chapter 1: Software and Software Engineering 7

8 1.2 What is Software Engineering?... The process of solving customers problems by the systematic development and evolution of large, highquality software systems within cost, time and other constraints Solving customers problems This is the goal of software engineering Sometimes the solution is to buy, not build Adding unnecessary features does not help solve the problem Software engineers must communicate effectively to identify and understand the problem Lethbridge/Laganière 2001 Chapter 1: Software and Software Engineering 8

9 What is Software Engineering? Systematic development and evolution An engineering process involves applying well understood techniques in a organized and disciplined way Many well-accepted practices have been formally standardized e.g. by the IEEE or ISO Most development work is evolution Large, high quality software systems Software engineering techniques are needed because large systems cannot be completely understood by one person Teamwork and co-ordination are required Key challenge: Dividing up the work and ensuring that the parts of the system work properly together The end-product that is produced must be of sufficient quality Lethbridge/Laganière 2001 Chapter 1: Software and Software Engineering 9

10 What is Software Engineering? Cost, time and other constraints Finite resources The benefit must outweigh the cost Others are competing to do the job cheaper and faster Inaccurate estimates of cost and time have caused many project failures Lethbridge/Laganière 2001 Chapter 1: Software and Software Engineering 10

11 1.3 Software Engineering and the Engineering Profession The term Software Engineering was coined in 1968 People began to realize that the principles of engineering should be applied to software development Engineering is a licensed profession In order to protect the public Engineers design artifacts following well accepted practices which involve the application of science, mathematics and economics Ethical practice is also a key tenet of the profession Lethbridge/Laganière 2001 Chapter 1: Software and Software Engineering 11

12 1.4 Stakeholders in Software Engineering 1. Users Those who use the software 2. Customers Those who pay for the software 3. Software developers 4. Development Managers All four roles can be fulfilled by the same person Lethbridge/Laganière 2001 Chapter 1: Software and Software Engineering 12

13 1.5 Software Quality... Usability Users can learn it and fast and get their job done easily Efficiency It doesn t waste resources such as CPU time and memory Reliability It does what it is required to do without failing Maintainability It can be easily changed Reusability Its parts can be used in other projects, so reprogramming is not needed Lethbridge/Laganière 2001 Chapter 1: Software and Software Engineering 13

14 Software Quality... Customer: solves problems at an acceptable cost in terms of money paid and resources used User: easy to learn; efficient to use; helps get work done QUALITY SOFTWARE Developer: easy to design; easy to maintain; easy to reuse its parts Development manager: sells more and pleases customers while costing less to develop and maintain Lethbridge/Laganière 2001 Chapter 1: Software and Software Engineering 14

15 Software Quality The different qualities can conflict Increasing efficiency can reduce maintainability or reusability Increasing usability can reduce efficiency Setting objectives for quality is a key engineering activity You then design to meet the objectives Avoids over-engineering which wastes money Optimizing is also sometimes necessary E.g. obtain the highest possible reliability using a fixed budget Lethbridge/Laganière 2001 Chapter 1: Software and Software Engineering 15

16 Internal Quality Criteria These: Characterize aspects of the design of the software Have an effect on the external quality attributes E.g. The amount of commenting of the code The complexity of the code Lethbridge/Laganière 2001 Chapter 1: Software and Software Engineering 16

17 Short Term Vs. Long Term Quality Short term: Does the software meet the customer s immediate needs? Is it sufficiently efficient for the volume of data we have today? Long term: Maintainability Customer s future needs Lethbridge/Laganière 2001 Chapter 1: Software and Software Engineering 17

18 1.6 Software Engineering Projects Most projects are evolutionary or maintenance projects, involving work on legacy systems Corrective projects: fixing defects Adaptive projects: changing the system in response to changes in Operating system Database Rules and regulations Enhancement projects: adding new features for users Reengineering or perfective projects: changing the system internally so it is more maintainable Lethbridge/Laganière 2001 Chapter 1: Software and Software Engineering 18

19 Software Engineering Projects Green field projects New development The minority of projects Lethbridge/Laganière 2001 Chapter 1: Software and Software Engineering 19

20 Software Engineering Projects Projects that involve building on a framework or a set of existing components. The framework is an application that is missing some important details. E.g. Specific rules of this organization. Such projects: Involve plugging together components that are: - Already developed. - Provide significant functionality. Benefit from reusing reliable software. Provide much of the same freedom to innovate found in green field development. Lethbridge/Laganière 2001 Chapter 1: Software and Software Engineering 20

21 1.7 Activities Common to Software Projects... Requirements and specification Includes Domain analysis Defining the problem Requirements gathering - Obtaining input from as many sources as possible Requirements analysis - Organizing the information Requirements specification - Writing detailed instructions about how the software should behave Lethbridge/Laganière 2001 Chapter 1: Software and Software Engineering 21

22 Activities Common to Software Projects... Design Deciding how the requirements should be implemented, using the available technology Includes: Systems engineering: Deciding what should be in hardware and what in software Software architecture: Dividing the system into subsystems and deciding how the subsystems will interact Detailed design of the internals of a subsystem User interface design Design of databases Lethbridge/Laganière 2001 Chapter 1: Software and Software Engineering 22

23 Activities Common to Software Projects Modeling Creating representations of the domain or the software Use case modeling Structural modeling Dynamic and behavioural modeling Programming Quality assurance Reviews and inspections Testing Deployment Managing the process Lethbridge/Laganière 2001 Chapter 1: Software and Software Engineering 23

24 1.8 The Eight Themes of the Book 1. Understanding the customer and the user 2. Basing development on solid principles and reusable technology 3. Object orientation 4. Visual modeling using UML 5. Evaluation of alternatives 6. Iterative development 7. Communicating effectively using documentation 8. Risk management in all SE activities Lethbridge/Laganière 2001 Chapter 1: Software and Software Engineering 24

25 1.9 Difficulties and Risks in Software Engineering Complexity and large numbers of details Uncertainty about technology Uncertainty about requirements Uncertainty about software engineering skills Constant change Deterioration of software design Political risks Lethbridge/Laganière 2001 Chapter 1: Software and Software Engineering 25

1.1 The Nature of Software... Object-Oriented Software Engineering Practical Software Development using UML and Java. The Nature of Software...

1.1 The Nature of Software... Object-Oriented Software Engineering Practical Software Development using UML and Java. The Nature of Software... 1.1 The Nature of Software... Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering Software is intangible Hard to understand

More information

Software Engineering/Courses Description Introduction to Software Engineering Credit Hours: 3 Prerequisite: 0306211(Computer Programming 2).

Software Engineering/Courses Description Introduction to Software Engineering Credit Hours: 3 Prerequisite: 0306211(Computer Programming 2). 0305203 0305280 0305301 0305302 Software Engineering/Courses Description Introduction to Software Engineering Prerequisite: 0306211(Computer Programming 2). This course introduces students to the problems

More information

Software Engineering. Introduction. Software Costs. Software is Expensive [Boehm] ... Columbus set sail for India. He ended up in the Bahamas...

Software Engineering. Introduction. Software Costs. Software is Expensive [Boehm] ... Columbus set sail for India. He ended up in the Bahamas... Software Engineering Introduction... Columbus set sail for India. He ended up in the Bahamas... The economies of ALL developed nations are dependent on software More and more systems are software controlled

More information

Software Engineering. What is SE, Anyway? Based on Software Engineering, 7 th Edition by Ian Sommerville

Software Engineering. What is SE, Anyway? Based on Software Engineering, 7 th Edition by Ian Sommerville Software Engineering What is SE, Anyway? Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To introduce software engineering and to explain its importance To set out the answers

More information

Software Engineering UNIT -1 OVERVIEW

Software Engineering UNIT -1 OVERVIEW UNIT -1 OVERVIEW The economies of ALL developed nations are dependent on software. More and more systems are software controlled. Software engineering is concerned with theories, methods and tools for

More information

SE 367 Software Engineering Basics of Software Engineering

SE 367 Software Engineering Basics of Software Engineering Slide 1 SE 367 Software Engineering Basics of Software Engineering Slide 2 Introduction Getting started with software engineering Objectives To introduce software engineering and to explain its importance

More information

Introduction to Software Engineering. Adopted from Software Engineering, by Ian Sommerville

Introduction to Software Engineering. Adopted from Software Engineering, by Ian Sommerville Introduction to Software Engineering Adopted from Software Engineering, by Ian Sommerville To discuss the factors that led to software failures and the phenomenon of the Software Crisis ; To introduce

More information

Introduction. Getting started with software engineering. Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 1 Slide 1

Introduction. Getting started with software engineering. Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 1 Slide 1 Introduction Getting started with software engineering Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 1 Slide 1 Objectives To introduce software engineering and to explain its importance

More information

Topics covered. An Introduction to Software Engineering. FAQs about software engineering Professional and ethical responsibility

Topics covered. An Introduction to Software Engineering. FAQs about software engineering Professional and ethical responsibility An Introduction to Software Engineering Antinisca Di Marco adimarco@di.univaq.it Objectives To introduce software engineering and to explain its importance To set out the answers to key questions about

More information

Chapter 1 Introduction

Chapter 1 Introduction Chapter 1 Introduction Chapter 1 Introduction Slide 1 Topics covered Professional software development What is meant by software engineering. Addendum to Sommerville s FAQs Software engineering ethics

More information

CMSC 435: Software Engineering Course overview. Topics covered today

CMSC 435: Software Engineering Course overview. Topics covered today CMSC 435: Software Engineering Course overview CMSC 435-1 Topics covered today Course requirements FAQs about software engineering Professional and ethical responsibility CMSC 435-2 Course Objectives To

More information

Chap 1. Introduction to Software Architecture

Chap 1. Introduction to Software Architecture Chap 1. Introduction to Software Architecture 1. Introduction 2. IEEE Recommended Practice for Architecture Modeling 3. Architecture Description Language: the UML 4. The Rational Unified Process (RUP)

More information

The Role of the Software Architect

The Role of the Software Architect IBM Software Group The Role of the Software Architect Peter Eeles peter.eeles@uk.ibm.com 2004 IBM Corporation Agenda Architecture Architect Architecting Requirements Analysis and design Implementation

More information

Introduction to Software Engineering

Introduction to Software Engineering What is Software Engineering Introduction to Software Engineering Prof. Lyle N. Long lnl@psu.edu http://www.personal.psu.edu/lnl Sources of Material What is software? Software Engineering, 7 th Edition,

More information

2. Analysis, Design and Implementation

2. Analysis, Design and Implementation 2. Subject/Topic/Focus: Software Production Process Summary: Software Crisis Software as a Product: From Individual Programs to Complete Application Systems Software Development: Goals, Tasks, Actors,

More information

An Introduction to Software Engineering

An Introduction to Software Engineering An Introduction to Software Engineering Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 1 Objectives To introduce software engineering and to explain its importance To set out the

More information

An Introduction to Software Engineering. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 1

An Introduction to Software Engineering. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 1 An Introduction to Software Engineering Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 1 Objectives To introduce software engineering and to explain its importance To set out the

More information

An Introduction to Software Engineering

An Introduction to Software Engineering An Introduction to Software Engineering ACSC 383 Software Engineering Efthyvoulos C. Kyriacou (PhD) Assoc. Prof. Computer Science and Engineering Department Resources : Ian Sommervile Software engineering,

More information

What is Automotive Software Engineering? What is Automotive Software Engineering? What is Automotive Software Engineering?

What is Automotive Software Engineering? What is Automotive Software Engineering? What is Automotive Software Engineering? Process models: Capability Maturity Model Integration (CMMI) Software Process Improvement and Capability Determination (SPICE) V-Model Standards: MISRA-C standard AUTOSAR Configuration management Product

More information

Ten steps to better requirements management.

Ten steps to better requirements management. White paper June 2009 Ten steps to better requirements management. Dominic Tavassoli, IBM Actionable enterprise architecture management Page 2 Contents 2 Introduction 2 Defining a good requirement 3 Ten

More information

Aerospace Software Engineering

Aerospace Software Engineering 16.35 Aerospace Software Engineering Offered by the Dept. of Aero/Astro, MIT Autumn 2002 Instructors: Prof. I. K. Lundqvist Prof. N. G. Leveson Guest lecturers: Prof. K. Vicente R. Racine G. Romanski M.

More information

Peter Mileff PhD SOFTWARE ENGINEERING. The Basics of Software Engineering. University of Miskolc Department of Information Technology

Peter Mileff PhD SOFTWARE ENGINEERING. The Basics of Software Engineering. University of Miskolc Department of Information Technology Peter Mileff PhD SOFTWARE ENGINEERING The Basics of Software Engineering University of Miskolc Department of Information Technology Introduction Péter Mileff - Department of Information Engineering Room

More information

IF2261 Software Engineering. Introduction. What is software? What is software? What is software? Failure Curve. Software Applications Type

IF2261 Software Engineering. Introduction. What is software? What is software? What is software? Failure Curve. Software Applications Type IF2261 Software Engineering Introduction Program Studi Teknik Informatika STEI ITB What is software? Definitions: Computer programs, procedures, and possibly associated documentation and data pertaining

More information

CHAPTER 1: INTRODUCTION TO RAPID APPLICATION DEVELOPMENT (RAD)

CHAPTER 1: INTRODUCTION TO RAPID APPLICATION DEVELOPMENT (RAD) CHAPTER 1: INTRODUCTION TO RAPID APPLICATION DEVELOPMENT (RAD) 1. INTRODUCTIONS RAD refers to a development life cycle designed Compare to traditional life cycle it is Faster development with higher quality

More information

Chapter 3. Technology review. 3.1. Introduction

Chapter 3. Technology review. 3.1. Introduction Technology review Chapter 3 3.1. Introduction Previous chapter covers detail description about problem domain. In this chapter I will discuss the technologies currently available to solve a problem in

More information

Software Engineering. Introduc)on

Software Engineering. Introduc)on Software Engineering Introduc)on Software engineering The economies of ALL developed nations are dependent on software. More and more systems are software controlled Software engineering is concerned with

More information

Software Engineering. Software Engineering. Software Costs

Software Engineering. Software Engineering. Software Costs Software Engineering Software Engineering is the science and art of building significant software systems that are: 1) on time 2) on budget 3) with acceptable performance 4) with correct operation. Ian

More information

Software Development in the Large!

Software Development in the Large! Software Development in the Large! Peter Eeles Executive IT Architect, IBM peter.eeles@uk.ibm.com IBM Rational Software Development Conference 2007 2007 IBM Corporation Agenda IBM Rational Software Development

More information

Software Engineering. Objectives. Designing, building and maintaining large software systems

Software Engineering. Objectives. Designing, building and maintaining large software systems Software Engineering Objectives Designing, building and maintaining large software systems To define software engineering and explain its importance To discuss the concepts of software products and software

More information

Socio technical Systems. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 2 Slide 1

Socio technical Systems. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 2 Slide 1 Socio technical Systems Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 2 Slide 1 Objectives To explain what a socio technical system is and the distinction between this and a computer

More information

Revealing the Big Picture Using Business Process Management

Revealing the Big Picture Using Business Process Management Revealing the Big Picture Using Business Process Management Page 1 of 20 Page 2 of 20 Introduction In today s business environment, change is inevitable. Changes in technology, organizational structure,

More information

Web Application Architectures

Web Application Architectures Web Engineering Web Application Architectures Copyright 2013 Ioan Toma & Srdjan Komazec 1 Where we are? # Date Title 1 5 th March Web Engineering Introduction and Overview 2 12 th March Requirements Engineering

More information

Socio-Technical Systems

Socio-Technical Systems Software Engineering Socio-Technical Systems Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To explain what a socio-technical system is and the distinction between this and a

More information

Introduction. Getting started with software engineering. Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 1 Slide 1

Introduction. Getting started with software engineering. Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 1 Slide 1 Introduction Getting started with software engineering Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 1 Slide 1 Why? the Therac-25 Failure 1985-1987 Therac-25 Radiation Treatment Machine

More information

Applying 4+1 View Architecture with UML 2. White Paper

Applying 4+1 View Architecture with UML 2. White Paper Applying 4+1 View Architecture with UML 2 White Paper Copyright 2007 FCGSS, all rights reserved. www.fcgss.com Introduction Unified Modeling Language (UML) has been available since 1997, and UML 2 was

More information

2. Analysis, Design and Implementation

2. Analysis, Design and Implementation 2. Analysis, Design and Implementation Subject/Topic/Focus: Software Production Process Summary: Software Crisis Software as a Product: From Programs to Application Systems Products Software Development:

More information

Best-Practice Software Engineering: Software Processes to Support Project Success. Dietmar Winkler

Best-Practice Software Engineering: Software Processes to Support Project Success. Dietmar Winkler Best-Practice Software Engineering: Software Processes to Support Project Success Dietmar Winkler Vienna University of Technology Institute of Software Technology and Interactive Systems Dietmar.Winkler@qse.ifs.tuwien.ac.at

More information

International Journal of Advance Research in Computer Science and Management Studies

International Journal of Advance Research in Computer Science and Management Studies Volume 2, Issue 12, December 2014 ISSN: 2321 7782 (Online) International Journal of Advance Research in Computer Science and Management Studies Research Article / Survey Paper / Case Study Available online

More information

The Software Process. The Unified Process (Cont.) The Unified Process (Cont.)

The Software Process. The Unified Process (Cont.) The Unified Process (Cont.) The Software Process Xiaojun Qi 1 The Unified Process Until recently, three of the most successful object-oriented methodologies were Booch smethod Jacobson s Objectory Rumbaugh s OMT (Object Modeling

More information

Fundamentals of Information Systems, Fifth Edition. Chapter 8 Systems Development

Fundamentals of Information Systems, Fifth Edition. Chapter 8 Systems Development Fundamentals of Information Systems, Fifth Edition Chapter 8 Systems Development Principles and Learning Objectives Effective systems development requires a team effort of stakeholders, users, managers,

More information

Questions? Assignment. Techniques for Gathering Requirements. Gathering and Analysing Requirements

Questions? Assignment. Techniques for Gathering Requirements. Gathering and Analysing Requirements Questions? Assignment Why is proper project management important? What is goal of domain analysis? What is the difference between functional and non- functional requirements? Why is it important for requirements

More information

Software Engineering Compiled By: Roshani Ghimire Page 1

Software Engineering Compiled By: Roshani Ghimire Page 1 Unit 7: Metric for Process and Product 7.1 Software Measurement Measurement is the process by which numbers or symbols are assigned to the attributes of entities in the real world in such a way as to define

More information

Process Models and Metrics

Process Models and Metrics Process Models and Metrics PROCESS MODELS AND METRICS These models and metrics capture information about the processes being performed We can model and measure the definition of the process process performers

More information

Software Engineering Reference Framework

Software Engineering Reference Framework Software Engineering Reference Framework Michel Chaudron, Jan Friso Groote, Kees van Hee, Kees Hemerik, Lou Somers, Tom Verhoeff. Department of Mathematics and Computer Science Eindhoven University of

More information

Design with Reuse. Building software from reusable components. Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 14 Slide 1

Design with Reuse. Building software from reusable components. Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 14 Slide 1 Design with Reuse Building software from reusable components. Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 14 Slide 1 Objectives To explain the benefits of software reuse and some reuse

More information

What is a life cycle model?

What is a life cycle model? What is a life cycle model? Framework under which a software product is going to be developed. Defines the phases that the product under development will go through. Identifies activities involved in each

More information

Software Engineering. Software Reuse. Based on Software Engineering, 7 th Edition by Ian Sommerville

Software Engineering. Software Reuse. Based on Software Engineering, 7 th Edition by Ian Sommerville Software Engineering Software Reuse Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To explain the benefits of software reuse and some reuse problems To discuss several different

More information

Technology Change Management

Technology Change Management The PROJECT PERFECT White Paper Collection Introduction Technology Change Management Sandeep Mehta This article takes an objective look at Technology Change Management (TCM). It covers a number of topics

More information

How To Write Software

How To Write Software Overview of Software Engineering Principles 1 Software Engineering in a Nutshell Development of software systems whose size/ complexity warrants a team or teams of engineers multi-person construction of

More information

CS 487. Week 8. Reference: 1. Software engineering, roger s. pressman. Reading: 1. Ian Sommerville, Chapter 3. Objective:

CS 487. Week 8. Reference: 1. Software engineering, roger s. pressman. Reading: 1. Ian Sommerville, Chapter 3. Objective: CS 487 Week 8 Reading: 1. Ian Sommerville, Chapter 3. Objective: 1. To check the understandibility of the students in life cycle and process model for development of a software product. 2. To check if

More information

New criteria for assessing a technological design

New criteria for assessing a technological design New criteria for assessing a technological design Kees van Hee and Kees van Overveld April 2012 1. Introduction In 2010 we developed a set of criteria for the evaluation of technological design projects

More information

Insurance Technology Solutions. Mindteck. Maximizing Business Value with Efficient IT Services

Insurance Technology Solutions. Mindteck. Maximizing Business Value with Efficient IT Services Mindteck Maximizing Business Value with Efficient IT Services 1 The Insurance business environment is characterized by the ability of a company to adapt and keep pace with market changes and technological

More information

Requirements Analysis Concepts & Principles. Instructor: Dr. Jerry Gao

Requirements Analysis Concepts & Principles. Instructor: Dr. Jerry Gao Requirements Analysis Concepts & Principles Instructor: Dr. Jerry Gao Requirements Analysis Concepts and Principles - Requirements Analysis - Communication Techniques - Initiating the Process - Facilitated

More information

Ingegneria del Software. Gabriele Monfardini - Corso di Ingegneria del Software

Ingegneria del Software. Gabriele Monfardini - Corso di Ingegneria del Software Ingegneria del Software Presentazione del corso slide, esami e molto altro... Libri di testo C. Ghezzi, M. Jazayeri, D. Mandrioli, "Ingegneria del software. Fondamenti e principi", 2a ed., Pearson Education

More information

How To Develop A Telelogic Harmony/Esw Project

How To Develop A Telelogic Harmony/Esw Project White paper October 2008 The Telelogic Harmony/ESW process for realtime and embedded development. Bruce Powel Douglass, IBM Page 2 Contents 3 Overview 4 Telelogic Harmony/ESW core principles 6 Harmony/ESW

More information

Benefits of extend On-Demand (SaaS Model) for Equipment Dealers and Rental Firms

Benefits of extend On-Demand (SaaS Model) for Equipment Dealers and Rental Firms extend On-Demand WHITEPAPER Benefits of extend On-Demand (SaaS Model) for Equipment Dealers and Rental Firms A Journey to Competitive Advantage and Business Excellence Abstract Competitive Advantage through

More information

Software Requirements, Third Edition

Software Requirements, Third Edition j Microsoft Software Requirements, Third Edition Karl Wiegers and Joy Beatty Contents Introduction Acknowledgments xxv xxxi PART I SOFTWARE REQUIREMENTS: WHAT, WHY, AND WHO Chapter 1 The essential software

More information

PC & EMBEDDED CONTROL TRENDS

PC & EMBEDDED CONTROL TRENDS PC & EMBEDDED CONTROL TRENDS Bjoern Falke, Phoenix Contact Inc., Harrisburg, PA Abstract - The trend to reduce machine size and cost while increasing productivity requires new approaches to control systems.

More information

Assessing Your Business Analytics Initiatives

Assessing Your Business Analytics Initiatives Assessing Your Business Analytics Initiatives Eight Metrics That Matter WHITE PAPER SAS White Paper Table of Contents Introduction.... 1 The Metrics... 1 Business Analytics Benchmark Study.... 3 Overall

More information

The role of integrated requirements management in software delivery.

The role of integrated requirements management in software delivery. Software development White paper October 2007 The role of integrated requirements Jim Heumann, requirements evangelist, IBM Rational 2 Contents 2 Introduction 2 What is integrated requirements management?

More information

Reliable Business Data Implementing A Successful Data Governance Strategy with Enterprise Modeling Standards

Reliable Business Data Implementing A Successful Data Governance Strategy with Enterprise Modeling Standards Reliable Business Data Implementing A Successful Data Governance Strategy with Enterprise Modeling Standards All Rights Reserved Welcome! Let Me Introduce Myself Marcie Barkin Goodwin President & CEO Axis

More information

White Paper What Solutions Architects Should Know About The TOGAF ADM

White Paper What Solutions Architects Should Know About The TOGAF ADM White Paper What Solutions Architects Should Know About The TOGAF ADM WP0015 October 2011 The Open Group Architecture Framework 1 (TOGAF) is the most widely referenced architecture framework currently

More information

How to realize software evolution of existing BOSS via ZTE SEEM

How to realize software evolution of existing BOSS via ZTE SEEM How to realize software evolution of existing BOSS via ZTE SEEM Zhan Zhang Abstract Due to long-term construction and accumulation for different purposes, telecom carriers normally have very complex IT

More information

BCS THE CHARTERED INSTITUTE FOR IT. BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 6 Professional Graduate Diploma in IT SOFTWARE ENGINEERING 2

BCS THE CHARTERED INSTITUTE FOR IT. BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 6 Professional Graduate Diploma in IT SOFTWARE ENGINEERING 2 BCS THE CHARTERED INSTITUTE FOR IT BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 6 Professional Graduate Diploma in IT SOFTWARE ENGINEERING 2 EXAMINERS REPORT Friday 2 nd October 2015 Answer any THREE

More information

Chapter 23 Software Cost Estimation

Chapter 23 Software Cost Estimation Chapter 23 Software Cost Estimation Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 23 Slide 1 Software cost estimation Predicting the resources required for a software development process

More information

Quality Management. Lecture 12 Software quality management

Quality Management. Lecture 12 Software quality management Quality Management Lecture 12 Software quality management doc.dr.sc. Marko Jurčević prof.dr.sc. Roman Malarić University of Zagreb Faculty of Electrical Engineering and Computing Department of Fundamentals

More information

CS 389 Software Engineering. Lecture 2 Chapter 2 Software Processes. Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed.

CS 389 Software Engineering. Lecture 2 Chapter 2 Software Processes. Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed. CS 389 Software Engineering Lecture 2 Chapter 2 Software Processes Adapted from: Chap 1. Sommerville 9 th ed. Chap 1. Pressman 6 th ed. Topics covered Software process models Process activities Coping

More information

Your Software Quality is Our Business. INDEPENDENT VERIFICATION AND VALIDATION (IV&V) WHITE PAPER Prepared by Adnet, Inc.

Your Software Quality is Our Business. INDEPENDENT VERIFICATION AND VALIDATION (IV&V) WHITE PAPER Prepared by Adnet, Inc. INDEPENDENT VERIFICATION AND VALIDATION (IV&V) WHITE PAPER Prepared by Adnet, Inc. February 2013 1 Executive Summary Adnet is pleased to provide this white paper, describing our approach to performing

More information

IEEE SESC Architecture Planning Group: Action Plan

IEEE SESC Architecture Planning Group: Action Plan IEEE SESC Architecture Planning Group: Action Plan Foreward The definition and application of architectural concepts is an important part of the development of software systems engineering products. The

More information

A Study on Software Metrics and Phase based Defect Removal Pattern Technique for Project Management

A Study on Software Metrics and Phase based Defect Removal Pattern Technique for Project Management International Journal of Soft Computing and Engineering (IJSCE) A Study on Software Metrics and Phase based Defect Removal Pattern Technique for Project Management Jayanthi.R, M Lilly Florence Abstract:

More information

Software Portfolio Analysis Does your Investment perform adequately? Mary Udeh

Software Portfolio Analysis Does your Investment perform adequately? Mary Udeh Software Portfolio Analysis Does your Investment perform adequately? Mary Udeh Abstract The objective of this paper is to provide a solution to the problem of escalating Information technology (IT) costs

More information

Tools for Testing Software Architectures. Learning Objectives. Context

Tools for Testing Software Architectures. Learning Objectives. Context Tools for Testing Software Architectures Wolfgang Emmerich Professor of Distributed Computing University College London http://sse.cs.ucl.ac.uk Learning Objectives To discuss tools to validate software

More information

www.iacpe.com Knowledge, Certification, Networking

www.iacpe.com Knowledge, Certification, Networking www.iacpe.com Knowledge, Certification, Networking Page : 1 of 95 Rev. 01- Feb 2016 IACPE No 19, Jalan Bilal Mahmood 80100 Johor Bahru Malaysia Introduction to Software Engineering The International of

More information

Fundamentals of Measurements

Fundamentals of Measurements Objective Software Project Measurements Slide 1 Fundamentals of Measurements Educational Objective: To review the fundamentals of software measurement, to illustrate that measurement plays a central role

More information

BCS HIGHER EDUCATION QUALIFICATIONS Level 6 Professional Graduate Diploma in IT. March 2013 EXAMINERS REPORT. Software Engineering 2

BCS HIGHER EDUCATION QUALIFICATIONS Level 6 Professional Graduate Diploma in IT. March 2013 EXAMINERS REPORT. Software Engineering 2 BCS HIGHER EDUCATION QUALIFICATIONS Level 6 Professional Graduate Diploma in IT March 2013 EXAMINERS REPORT Software Engineering 2 General Comments The pass rate this year was significantly better than

More information

Software: Driving Innovation for Engineered Products. Page

Software: Driving Innovation for Engineered Products. Page Software: Driving Innovation for Engineered Products Software in products holds the key to innovations that improve quality, safety, and ease-of-use, as well as add new functions. Software simply makes

More information

i2isales Training Solution - Sales Management

i2isales Training Solution - Sales Management Please note: This document has been created due to requests from some of our customers for an off the shelf solution. It represents a very basic outline of the type of offering(s) we provide - and should

More information

To introduce software process models To describe three generic process models and when they may be used

To introduce software process models To describe three generic process models and when they may be used Software Processes Objectives To introduce software process models To describe three generic process models and when they may be used To describe outline process models for requirements engineering, software

More information

Developing Business Architecture with TOGAF

Developing Business Architecture with TOGAF Developing Business Architecture with TOGAF Building Business Capability 2013 Las Vegas, NV Armstrong Process Group, Inc. www.aprocessgroup.com Objectives Introduce The Open Group Architecture Framework

More information

BCS HIGHER EDUCATION QUALIFICATIONS. BCS Level 5 Diploma in IT. Software Engineering 1. June 2015 EXAMINERS REPORT

BCS HIGHER EDUCATION QUALIFICATIONS. BCS Level 5 Diploma in IT. Software Engineering 1. June 2015 EXAMINERS REPORT BCS HIGHER EDUCATION QUALIFICATIONS BCS Level 5 Diploma in IT Software Engineering 1 June 2015 EXAMINERS REPORT General Comments This is a technical paper about Software Engineering. Questions seek to

More information

Java Programming (10155)

Java Programming (10155) Java Programming (10155) Rationale Statement: The world is full of problems that need to be solved or that need a program to solve them faster. In computer, programming students will learn how to solve

More information

Introduction to software architecture

Introduction to software architecture Learning Unit 1 Introduction to software architecture Contents Introduction............................................... 7 1.1 What is software architecture?................................. 7 1.1.1

More information

Total Quality Management (TQM) Quality, Success and Failure. Total Quality Management (TQM) vs. Process Reengineering (BPR)

Total Quality Management (TQM) Quality, Success and Failure. Total Quality Management (TQM) vs. Process Reengineering (BPR) Total Quality Management (TQM) Quality, Success and Failure Total Quality Management (TQM) is a concept that makes quality control a responsibility to be shared by all people in an organization. M7011

More information

NASCIO EA Development Tool-Kit Solution Architecture. Version 3.0

NASCIO EA Development Tool-Kit Solution Architecture. Version 3.0 NASCIO EA Development Tool-Kit Solution Architecture Version 3.0 October 2004 TABLE OF CONTENTS SOLUTION ARCHITECTURE...1 Introduction...1 Benefits...3 Link to Implementation Planning...4 Definitions...5

More information

Anatomy of an Enterprise Software Delivery Project

Anatomy of an Enterprise Software Delivery Project Chapter 2 Anatomy of an Enterprise Software Delivery Project Chapter Summary I present an example of a typical enterprise software delivery project. I examine its key characteristics and analyze specific

More information

risks in the software projects [10,52], discussion platform, and COCOMO

risks in the software projects [10,52], discussion platform, and COCOMO CHAPTER-1 INTRODUCTION TO PROJECT MANAGEMENT SOFTWARE AND SERVICE ORIENTED ARCHITECTURE 1.1 Overview of the system Service Oriented Architecture for Collaborative WBPMS is a Service based project management

More information

CHAPTER 01 THE SCOPE OF SOFTWARE ENGINEERING

CHAPTER 01 THE SCOPE OF SOFTWARE ENGINEERING Lecture Software Engineering CHAPTER 01 THE SCOPE OF SOFTWARE ENGINEERING Lecture Software Engineering Topics Introduction Historical Aspects Economic Aspects Requirements, Analysis, and Design Aspects

More information

Requirements Engineering in Healthcare: Challenges, Solution Approaches and Best Practices

Requirements Engineering in Healthcare: Challenges, Solution Approaches and Best Practices Requirements Engineering in Healthcare: Challenges, Solution Approaches and Best Practices MedConf 2009 Munich, October 13-15,2009 Table of Contents Siemens Healthcare and Vector Consulting Services Motivation

More information

CSC 342 Semester I: 1425-1426H (2004-2005 G)

CSC 342 Semester I: 1425-1426H (2004-2005 G) CSC 342 Semester I: 1425-1426H (2004-2005 G) Software Engineering Systems Analysis: Requirements Structuring Context & DFDs. Instructor: Dr. Ghazy Assassa Software Engineering CSC 342/Dr. Ghazy Assassa

More information

Software Engineering. Software Processes. Based on Software Engineering, 7 th Edition by Ian Sommerville

Software Engineering. Software Processes. Based on Software Engineering, 7 th Edition by Ian Sommerville Software Engineering Software Processes Based on Software Engineering, 7 th Edition by Ian Sommerville Objectives To introduce software process models To describe three generic process models and when

More information

Total Exploration & Production: Field Monitoring Case Study

Total Exploration & Production: Field Monitoring Case Study Total Exploration & Production: Field Monitoring Case Study 1 Summary TOTAL S.A. is a word-class energy producer and provider, actually part of the super majors, i.e. the worldwide independent oil companies.

More information

SOFTWARE DEVELOPMENT STANDARD FOR SPACECRAFT

SOFTWARE DEVELOPMENT STANDARD FOR SPACECRAFT SOFTWARE DEVELOPMENT STANDARD FOR SPACECRAFT Mar 31, 2014 Japan Aerospace Exploration Agency This is an English translation of JERG-2-610. Whenever there is anything ambiguous in this document, the original

More information

Modernized and Maintainable Code. Frank Weil, Ph.D. UniqueSoft, LLC

Modernized and Maintainable Code. Frank Weil, Ph.D. UniqueSoft, LLC Modernized and Maintainable Code Frank Weil, Ph.D. UniqueSoft, LLC UniqueSoft is a provider of next-generation software development tools and services specializing in modernizing legacy software using

More information

Engineering a EIA - 632

Engineering a EIA - 632 es for Engineering a System EIA - 632 SE Tutorial es for Engr Sys - 1 Fundamental es for Engineering a System Acquisition and Supply Supply Acquisition es for Engineering A System Technical Management

More information

Lecture 3 Software Development Processes

Lecture 3 Software Development Processes Lecture 3 Software Development Processes Software Engineering ITCS 3155 Fall 2008 Dr. Jamie Payton Department of Computer Science University of North Carolina at Charlotte September 2, 2008 Lecture Overview

More information

An Introduction to. Metrics. used during. Software Development

An Introduction to. Metrics. used during. Software Development An Introduction to Metrics used during Software Development Life Cycle www.softwaretestinggenius.com Page 1 of 10 Define the Metric Objectives You can t control what you can t measure. This is a quote

More information

An Overview of Quality Assurance Practices in Agile Methodologies

An Overview of Quality Assurance Practices in Agile Methodologies T-76.650 SEMINAR IN SOFTWARE ENGINEERING, SPRING 2004 1 An Overview of Quality Assurance Practices in Agile Methodologies Olli P. Timperi Abstract The focus of literature and debates of agile methodologies

More information

Software Processes. The software process. Generic software process models. Waterfall model. Waterfall model phases

Software Processes. The software process. Generic software process models. Waterfall model. Waterfall model phases Software Processes CSC 221 Introduction to Software Engineering software processes extract from Sommerville s chapter 3 slides Alan Dix Coherent sets of activities for specifying, designing, implementing

More information

Process Streamlining. Whitepapers. Written by A Hall Operations Director. Origins

Process Streamlining. Whitepapers. Written by A Hall Operations Director. Origins Whitepapers Process Streamlining Written by A Hall Operations Director So, your processes are established and stable, but are clearly inefficient and you are not meeting your performance expectations.

More information