Software Construction Lecture 2

Slides:



Advertisements
Similar presentations
CIT731: Database Development Object Oriented Modeling (OOM)
Advertisements

Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
CS 340 UML Class Diagrams. A model is an abstraction of a system, specifying the modeled system from a certain viewpoint and at a certain level of abstraction.
Unified Modeling Language
Introduction To System Analysis and Design
Irwin/McGraw-Hill Copyright © 2004 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS6th Edition.
CS 425/625 Software Engineering System Models
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
1 Info 1409 Systems Analysis & Design Module Lecture 8 – Modelling tools and techniques HND Year /9 De Montfort University.
Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD
Principles of Object Technology Module 1: Principles of Modeling.
Systems Analysis And Design © Systems Analysis And Design © V. Rajaraman MODULE 14 CASE TOOLS Learning Units 14.1 CASE tools and their importance 14.2.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions of systems whose requirements are being.
CS 310 Ch8: System models Abstract descriptions of systems being analyzed to help the analyst understand the system functionality communicate with customers.
9/14/2012ISC329 Isabelle Bichindaritz1 Database System Life Cycle.
CS 360 Lecture 6.  A model is a simplification of reality  We build models to better understand the system being developed.  We build models of complex.
UML Diagrams: Class Diagrams The Static Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical Engineering, WVU.
R McFadyen Chapter 7 Conceptual Data Modeling.
Programming in Java Unit 3. Learning outcome:  LO2:Be able to design Java solutions  LO3:Be able to implement Java solutions Assessment criteria: 
Software Engineering, 8th edition Chapter 8 1 Courtesy: ©Ian Somerville 2006 April 06 th, 2009 Lecture # 13 System models.
Sommerville 2004,Mejia-Alvarez 2009Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
The Static Analysis Model Class Diagrams Prof. Hany H. Ammar, CSEE, WVU, and Dept. of Computer Science, Faculty of Computers and Information, Cairo University.
Course Instructor: Kashif Ihsan 1. Chapter # 3 2.
Object Oriented Analysis: Associations. 2 Object Oriented Modeling BUAD/American University Class Relationships u Classes have relationships between each.
Unified Modelling Language (UML) Software Engineering Lab. Sharif University of Technology.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
© 2006 Pearson Addison-Wesley. All rights reserved 2-1 Chapter 2 Principles of Programming & Software Engineering.
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
Software Engineering Lecture 10: System Engineering.
Introduction to OOAD and UML
GOVT. ENGINEERING COLLEGE, AJMER. A SEMINAR PRESENTATION ON UNIFIED MODELING LANGUAGE(UML) SUBMITTED TO:-PRESENTED BY:- Dr. REENA DADHICHPALLAVI VASHISTHA.
Engineering, 7th edition. Chapter 8 Slide 1 System models.
CompSci 280 S Introduction to Software Development
Systems Analysis and Design in a Changing World, Fourth Edition
UML Diagrams: Class Diagrams The Static Analysis Model
Software Engineering Lecture 4 System Modeling The Analysis Stage.
Object-oriented and Structured System Models
Business System Development
Course Outcomes of Object Oriented Modeling Design (17630,C604)
Object-Oriented Analysis and Design
Chapter ? Quality Assessment
Object-Oriented Techniques
Unified Modeling Language
Introduction to Unified Modeling Language (UML)
Introduction to Unified Modeling Language (UML)
Chapter 8 Analysis & Modeling
Data Dictionaries ER Diagram.
CSSSPEC6 SOFTWARE DEVELOPMENT WITH QUALITY ASSURANCE
Abstract descriptions of systems whose requirements are being analysed
UML Unified Modelling Language
Introduction to UML: Unified Modeling Language
Object-Oriented Analysis
Software Engineering Lecture #11.
Object Oriented Analysis and Design Using the UML
Chapter 9 Use Cases.
University of Houston-Clear Lake
UML Class Diagram.
Chapter 20 Object-Oriented Analysis and Design
Need for the subject.
Software Design Lecture : 15.
Dynamic Modeling Lecture # 37.
Copyright 2007 Oxford Consulting, Ltd
Requirement Analysis using
Software Modelling and Design
Chapter 5.
Chapter 22 Object-Oriented Systems Analysis and Design and UML
Use Case Analysis – continued
Chapter 4 System Modeling.
UML  UML stands for Unified Modeling Language. It is a standard which is mainly used for creating object- oriented, meaningful documentation models for.
Lecture 10 Structuring System Requirements: Conceptual Data Modeling
Presentation transcript:

Software Construction Lecture 2 Engr Huma Ayub Vine 12/25/2018 Software Construction Lecture 2

Software Construction Lecture 2 12/25/2018 Software Construction Lecture 2 sOFTWARE cONSTRUCTION lEC2

Perspectives on Software Engineering: Quality of Software

Software Construction Lecture 2 12/25/2018 Software Construction Lecture 2 sOFTWARE cONSTRUCTION lEC2

Software Construction Lecture 2 12/25/2018 Software Construction Lecture 2

Software Construction Lecture 2 Communication Problem 12/25/2018 Software Construction Lecture 2

Software Construction Lecture 2 12/25/2018 Software Construction Lecture 2

Software Construction Lecture 2 12/25/2018 Software Construction Lecture 2

Software Construction Lecture 2 General Groupings of Things There are two general groupings of things Structural things that define the conceptual and physical structures of an O-O system and are described by nouns. Behavioral things, the verbs that represent the behavior of the system and the states of the system before, during, and after the behaviors occur. 12/25/2018 Software Construction Lecture 2

Software Construction Lecture 2 A Little Bit Review : Object-Oriented Systems Analysis and Design Object-oriented (o-o) techniques work well in situations where complicated systems are undergoing continuous maintenance, adaptation, and design. The Unified Modeling Language (UML) is an industry standard for modeling object-oriented systems. 12/25/2018 Software Construction Lecture 2

Software Construction Lecture 2 12/25/2018 Software Construction Lecture 2

Software Construction Lecture 2 12/25/2018 Software Construction Lecture 2

Software Construction Lecture 2 12/25/2018 Software Construction Lecture 2

Software Construction Lecture 2 12/25/2018 Software Construction Lecture 2

Software Construction Lecture 2 12/25/2018 Software Construction Lecture 2

Software Construction Lecture 2 Practical Tool: UML 12/25/2018 Software Construction Lecture 2

Software Construction Lecture 2 12/25/2018 Software Construction Lecture 2

Software Construction Lecture 2 Sequence diagram and activity diagram 12/25/2018 Software Construction Lecture 2

Software Construction Lecture 2 12/25/2018 Software Construction Lecture 2

ANALYSIS MODEL REVISITED 12/25/2018 Software Construction Lecture 2

Basic concept of Analysis Model A Primarily step in Software construction To describe what the customer require by building a model using requirement elicited from customer To establish a basis for the creation of a software design To define a set of requirements that can be validated once the software is built, or validate software requirements using multiple dimensions thereby increasing probability of finding error 12/25/2018 Software Construction Lecture 2

Model What is a model? Why do we model? a model is a simplification of reality Why do we model? we build models so that we can better understand the system we are developing we build models of complex systems because we cannot comprehend such a system in its entirety four aims to achieve help us to visualize a system permit us to specify the structure/behavior of a system give us a template that guides us in constructing systems document the decisions we have made

Analysis Model - UML Function Data Behavior UML will be discussed in Object State-chart diagram Interaction diagram Class diagram Object diagram Use case diagram Activity diagram Data Behavior Function UML will be discussed in later chapters

Relationship Connectedness (join together) A fact that must be remembered by the system and cannot or is not computed or derived Several instance of a relationship can exist Object/Entity can be related in many ways own

Cardinality and Multiplicity own Automobile Person Make Model Body type Price Color Birthday Height Weight Expertise

Software Construction Lecture 2 12/25/2018 Software Construction Lecture 2

Association: Multiplicity OOADv4.2 Instructor Notes Association: Multiplicity Specification of multiplicity flushes out business rules and assumptions. The lower bound is critical, as the lower bound is what determines whether or not the relationship is optional (e.g., a lower bound of 0 indicates that the relationship is optional). Multiplicity is needed on both ends of a relationship, even if you can only navigate in one direction. Even though there is no need to navigate in that direction, the multiplicity still provides valuable business information. Sometimes navigation decisions are made for performance reasons, which may change over time. The multiplicity should reflect the requirements. Navigation is discussed on later slides. The use of ‘N’ instead of ‘*’ is Booch, not UML (e.g., the use of “0..N” and ‘N’ is not UML). Unspecified Exactly one Zero or more (many, unlimited One or more Zero or one Specified range Multiple, disjoint ranges 1 0..* 1..* 0..1 2..4 2, 4..6 Module 3 - Introduction to Object Orientation

Software Construction Lecture 2 12/25/2018 Software Construction Lecture 2

Software Construction Lecture 2 Object models Object = entity + operations Object models describe the system in terms of object classes An object class is an abstraction over a set of objects with common attributes and the services (operations) provided by each object Various object models may be produced Inheritance models Aggregation models Interaction models 12/25/2018 Software Construction Lecture 2

Asssociation and Aggregation Association • Is a Relationship between objects. • Objects have independent lifecycles. • There is no owner. • Objects can create and delete independently. Aggregation Specialize form of Association. • has-a relationship between objects • Object have independent life-cycles • Parent-Child relationship 12/25/2018 Software Construction Lecture 2

Software Construction Lecture 2 12/25/2018 Software Construction Lecture 2

Software Construction Lecture 2 Object Aggregation 12/25/2018 Software Construction Lecture 2

Functional Modeling: Data Flow Diagram Every computer-based system is an information transform .... computer based system input output

Data Flow Diagramming all icons must be labeled with meaningful names the DFD evolves through a number of levels of detail always begin with a context level diagram (also called level 0) always show external entities at level 0 always label data flow arrows do not represent procedural logic

Software Construction Lecture 2 Level 0 12/25/2018 Software Construction Lecture 2

Software Construction Lecture 2 Level 1 12/25/2018 Software Construction Lecture 2

Using PSPEC Process Specification (PSPEC) can be used to specify the processing details implied by a process within a DFD Check & convert pressure PSPEC If absolute tank pressure > max pressure then set above pressure to “true”; else set above pressure to “false”; begin conversion algorithm x-01a; compute converted pressure; end end if

Software Construction Lecture 2 12/25/2018 Software Construction Lecture 2

Software Construction Lecture 2 Basic Concept 12/25/2018 Software Construction Lecture 2

Software Construction Lecture 2 EXAMPLE 12/25/2018 Software Construction Lecture 2

Software Construction Lecture 2 A Harel statechart 12/25/2018 Software Construction Lecture 2

Software Construction Lecture 2 Moore model state diagram as used by Shlaer/Mellor. It is the equivalent to figure 1. 12/25/2018 Software Construction Lecture 2