The Software Development Life Cycle: An Overview Presented by Maxwell Drew and Dan Kaiser Southwest State University Computer Science Program.

Slides:



Advertisements
Similar presentations
Introduction to Object Orientation System Analysis and Design
Advertisements

©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 12Slide 1 Software Design l Objectives To explain how a software design may be represented.
Computer Science Dept. Fall 2003 Object models Object models describe the system in terms of object classes An object class is an abstraction over a set.
Systems Analysis and Design 8th Edition
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
Improved software quality through semantic descriptions (Skutt) Karlstad University Dept. of Computer Science UML introduction A short introduction.
Chapter 1 Object-Oriented System Development
2-1 © Prentice Hall, 2007 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
1 Software Testing and Quality Assurance Lecture 12 - The Testing Perspective (Chapter 2, A Practical Guide to Testing Object-Oriented Software)
7M701 1 Software Engineering Object-oriented Design Sommerville, Ian (2001) Software Engineering, 6 th edition: Chapter 12 )
1 SWE Introduction to Software Engineering Lecture 23 – Architectural Design (Chapter 13)
Irwin/McGraw-Hill Copyright © 2004 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS6th Edition.
Slide 1 Chapter 7 Structural Modeling. Slide 2 Key Ideas A structural or conceptual model describes the structure of the data that supports the business.
Chapter 14 (Web): Object-Oriented Data Modeling
Principles of Object-Oriented Software Development Unified Modeling Language.
7M701 1 Class Diagram advanced concepts. 7M701 2 Characteristics of Object Oriented Design (OOD) objectData and operations (functions) are combined 
Lecturer: Dr. AJ Bieszczad Chapter 66-1 Object-Oriented analysis and design Special nature of OO development Use cases Design with UML OO system design.
Systems Analysis & Design Sixth Edition Systems Analysis & Design Sixth Edition Toolkit Part 5.
7M822 UML Class Diagrams advanced concepts 15 September 2008.
2-1 © Prentice Hall, 2004 Chapter 2: Introduction to Object Orientation (Adapted) Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra,
Distribution of Marks Internal Sessional Evaluation Assignments – 10 Quizzes – 10 Class Participation Attendence – 5 Mid – Term Test – 25 External Evaluation.
Chapter 14: Object-Oriented Data Modeling
Introduction To System Analysis and design
The Software Development Life Cycle: An Overview
Systems Analysis and Design in a Changing World, Tuesday, Feb 27
OBJECT ORIENTED PROGRAMMING CONCEPTS ISC 560. Object-oriented Concepts  Objects – things names with nouns  Classes – classifications (groups) of similar.
CIT UPES | Sept 2013 | Unified Modeling Language - UML.
Object Oriented Design and Programming Alan Goude Room: Sheaf 9323.
Slide 1 UML Review Chapter 2: Introduction to Object-Oriented Systems Analysis and Design with the Unified Modeling Language, Version 2.0 Alan Dennis,
Unified Modeling Language, Version 2.0
11 Chapter 11 Object-Oriented Databases Database Systems: Design, Implementation, and Management 4th Edition Peter Rob & Carlos Coronel.
Slide 1 Structural Modeling Chapter 7. Slide 2 Key Ideas A structural or conceptual model describes the structure of the data that supports the business.
CH06: Considering Objects TECH Computer Science  Set, Class, Type  …of…  Objects, Actors, Agents  Data and Actions Object-Oriented Design and Development.
© 2009 Pearson Education, Inc. Publishing as Prentice Hall 1 Chapter 15: Object-Oriented Data Modeling Modern Database Management 9 h Edition Jeffrey A.
Systems Analysis & Design 7 th Edition Chapter 5.
IT 21103/41103 System Analysis & Design. Chapter 05 Object Modeling.
Systems Analysis and Design 8 th Edition Chapter 6 Object Modeling.
CSC480 Software Engineering Lecture 11 September 30, 2002.
CHAPTER 13: OBJECT-ORIENTED DATA MODELING (OVERVIEW) © 2013 Pearson Education, Inc. Publishing as Prentice Hall 1 Modern Database Management 11 th Edition.
Unified Modeling Language © 2002 by Dietrich and Urban1 ADVANCED DATABASE CONCEPTS Unified Modeling Language Susan D. Urban and Suzanne W. Dietrich Department.
Basic OOP Concepts and Terms. In this class, we will cover: Objects and examples of different object types Classes and how they relate to objects Object.
1/26 On-demand Learning Series Software Engineering of Web Application - Object-Oriented Development & UML Hunan University, Software School.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
Object-Oriented Modeling: Static Models. Object-Oriented Modeling Model the system as interacting objects Model the system as interacting objects Match.
CSC 131 Fall 2006 Lecture # 6 Object-Oriented Concepts.
Midterm Study Guide COP 4331 and EEL4884 OO Processes for Software Development © Dr. David A. Workman School of EE and Computer Science University of Central.
©2007 · Georges Merx and Ronald J. NormanSlide 1 Chapter 15 The Unified Modeling Language: a Primer.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
MADALINA CROITORU Software Engineering week 4 Practical Madalina Croitoru IUT Montpellier.
1 Unified Modeling Language, Version 2.0 Chapter 2.
Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph S. Valacich, Jeffrey A.
CMSC 345 Fall 2000 OO Design. Characteristics of OOD Objects are abstractions of real-world or system entities and manage themselves Objects are independent.
Unified OO becomes commonly used in the late 1980s Various analysis and design methods The “three amigos” join forces in Rational Software Also include.
Slide 1 Objectives Understand the basic characteristics of object-oriented systems. Be familiar with the Unified Modeling Language (UML),V.2.0.
Basic Characteristics of Object-Oriented Systems
Chapter 11 Inheritance © 2008 Pearson Education Inc., Upper Saddle River, NJ. All rights reserved. Marilyn Bohl/Maria Rynn Tools for Structured and Object-Oriented.
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
2-1 © Prentice Hall, 2004 Chapter 2: Introduction to Object Orientation Object-Oriented Systems Analysis and Design Joey F. George, Dinesh Batra, Joseph.
Object-oriented programming (OOP) is a programming paradigm using "objects" – data structures consisting of data fields and methods together with their.
Unified Modeling Language (UML)
Business System Development
DATA REQIREMENT ANALYSIS
The Movement To Objects
Object-Oriented Analysis and Design
Systems Analysis and Design With UML 2
Systems Analysis and Design With UML 2
University of Central Florida COP 3330 Object Oriented Programming
A short introduction to UML Eivind J. Nordby Karlstad University
Understand and Use Object Oriented Methods
Chapter 5.
Presentation transcript:

The Software Development Life Cycle: An Overview Presented by Maxwell Drew and Dan Kaiser Southwest State University Computer Science Program

Last Time The design process and design methods Design strategies including object-oriented design and functional decomposition Design quality attributes Comparison of Schwan’s and RUP Design Processes

Session 5: Agenda Introduction to the Principles of Object Technology Object Oriented Design Object Technology and RUP

Why “Objects”? Fundamental Ideas The world is composed of objects A person manipulates the object and the object does things. In object oriented analysis, design and programming we try to create software objects that model real-world objects.

Principles of the O-O Paradigm Abstraction Generalizing an object to just its pertinent attributes and behaviors, Encapsulation Bundling the attributes (data) and behaviors (methods) within the object. The methods form a protective barrier around the data.

Principles of the O-O Paradigm Polymorphism Allowing the same behavior to be exhibited differently by different classes or subclasses Inheritance Attributes and behaviors may be established in a general class and used to create more specific subclasses that have all the attributes and behaviors of the superclass

Encapsulation

Inheritance & Polymorphism Employee Name Hours Pay CalcPay( ) Salaried Name Hours Salary Pay CalcPay( ) Hourly Name Hours Wage Pay CalcPay( )

Object Terminology Object A structure containing data, and a set of functions that manipulate that data Method A function for manipulating the data in an object

Object Terminology Class A description of the methods and data structures of an object. A template for building and communicating with an object. Instance A specific, concrete member of a class. An instance has actual data assigned to the object

Object Terminology Subclass A child class that inherits methods and data from its parents. Superclass A parent class that provides methods and data to child classes derived from it.

Object-Oriented Requirements Object-Oriented Design begins in the requirements phase. Requirements identify the objects themselves Scan a description of the problem or system and associate an object with each noun in the description Classify and group those objects that have common attributes and behaviors Identify the relationships between objects

Guidelines for Identifying Classes What needs to be “processed” in some way? What items have multiple attributes? When do you have more than one object in a class? What is based on the requirements themselves, not derived from your understanding of the requirements? What attributes and operations are always applicable to a class or object?

Guidelines for Identifying Behaviors Imperative verbs Passive verbs Actions Things or reminded events Roles Operating procedures Services provided by an organization

Dynamic View of Requirements The descriptions of the attributes, behaviors of the objects and their relationships give a static view of the system Use Case diagrams can give a dynamic view of the system by describing the communication, control/timing and state changes in the objects

The Unified Modeling Language (UML) Mechanism for describing Object- Oriented solutions Developed by Grady Booch, Ivar Jacobson and James Rumbaugh Used in the Rational Unified Process

UML in the Development Process

Class Box Diagram

Inheritance Relationship

Other Relationships

Aggregation and Composition

Royal Service Station System Figure 6.17 p. 279

Royal Service Station System

Class Description Template Refuel Class p. 278

Class name: refuel Category: service External documents: Export control: Public Cardinality: n Hierarchy: Superclasses: services Associations: fuel in association Operation name: price Public member of: refuel Documentation: // Calculates fuel final price Preconditions: gallons > 0 Object diagram: (unspecified) Semantics: final_price = gallons * price Object diagram: (unspecified) Concurrency: sequential Public interface: Operations: price Private interface: Attributes: gallons price Implementation: Attributes: gallons price State machine: no Concurrency: sequential Persistence: transient

State Diagrams

Activity Diagrams

Questions?