Chapter 7-- Software Engineering 7.5 Tools of the Trade 楊家愉 應數一 100701014.

Slides:



Advertisements
Similar presentations
An Introduction to Programming General Concepts. What is a program? A program is an algorithm expressed in a programming language. programming language.
Advertisements

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.
System Modelling System modelling helps the analyst to understand the functionality of the system and models are used to communicate with customers. Different.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System modeling 2.
Object-Oriented Analysis and Design
Introduction To System Analysis and Design
Chapter 18 Object-Oriented Systems Analysis and Design Using UML
Systems Analysis and Design in a Changing World, Fourth Edition
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 8 Slide 1 System models.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models September 29, 2008.
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.
Supplement 02CASE Tools1 Supplement 02 - Case Tools And Franchise Colleges By MANSHA NAWAZ.
Unified Modeling Language
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Computer Science: An Overview Tenth Edition by J. Glenn Brookshear Chapter.
Chapter 7: The Object-Oriented Approach to Requirements
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions of systems whose requirements are being.
PHASE 3: SYSTEMS DESIGN Chapter 7 Data Design.
Systems Analysis – Analyzing Requirements.  Analyzing requirement stage identifies user information needs and new systems requirements  IS dev team.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions of systems whose requirements are being.
Chapter 4 System Models A description of the various models that can be used to specify software systems.
System models Abstract descriptions of systems whose requirements are being analysed Abstract descriptions of systems whose requirements are being analysed.
Copyright © 2015 Pearson Education, Inc. Chapter 7: Software Engineering.
1 SYS366 Lecture Visual Modeling and Business Use Case Diagrams.
Chapter 10 Information Systems Analysis and Design
Systems Analysis and Design in a Changing World, Fifth Edition
Introduction To System Analysis and Design
Programming in Java Unit 3. Learning outcome:  LO2:Be able to design Java solutions  LO3:Be able to implement Java solutions Assessment criteria: 
Other UML Diagramming Techniques CS 124. UML Diagramming Techniques Class Diagrams Use Case Diagrams Interaction Diagrams Sequence diagrams Collaboration.
Chapter 1 Introduction to Structured Design. Introduction  System  A combination of people, equipment, and procedures that work together to perform.
Chapter 7 System models.
System models l Abstract descriptions of systems whose requirements are being analysed.
Modified by Juan M. Gomez Software Engineering, 6th edition. Chapter 7 Slide 1 Chapter 7 System Models.
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.
Systems Analysis & Design 7 th Edition Chapter 5.
UML Use Case Diagramming Guidelines. What is UML? The Unified Modeling Language (UML) is a standard language for specifying, visualizing, constructing,
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 Chapter 7 System Models.
7 Systems Analysis and Design in a Changing World, Fifth Edition.
1 Technology in Action Chapter 11 Behind the Scenes: Databases and Information Systems Copyright © 2010 Pearson Education, Inc. Publishing as Prentice.
Understanding and using patterns in software development EEL 6883 Software Engineering Vol. 1 Chapter 4 pp Presenter: Sorosh Olamaei.
Introduction to UML CS A470. What is UML? Unified Modeling Language –OMG Standard, Object Management Group –Based on work from Booch, Rumbaugh, Jacobson.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
Systems Analysis and Design in a Changing World, Fourth Edition
Chapter 7 Software Engineering © 2007 Pearson Addison-Wesley. All rights reserved.
Chapter 4 Automated Tools for Systems Development Modern Systems Analysis and Design Third Edition 4.1.
Exam 2 Review Software Engineering CS 561. Outline Requirements Development UML Class Diagrams Design Patterns Users, Usability, and User Interfaces Software.
Chapter 7: Software Engineering
ANALISA & PERANCANGAN SISTEM Disusun Oleh : Dr. Lily Wulandari Program Pasca Sarjana Magister Sistem Informasi Universitas Gunadarma.
UML Course Instructor: Rizwana Noor. Overview  Modeling  What is UML?  Why UML?  UML Diagrams  Use Case  Components  Relationships  Notations.
Object-Oriented Software Engineering Practical Software Development using UML and Java Modelling with Classes.
7 Systems Analysis – ITEC 3155 The Object Oriented Approach – Use Cases.
SWE 214 (071) Introduction to UML Slide 1 Introduction to UML.
Chapter 4 – System Modeling Lecture 1 1Chapter 5 System modeling.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
OCR A Level F453: High level languages Programming techniques a. identify a variety of programming paradigms (low-level, object- oriented,
Engineering, 7th edition. Chapter 8 Slide 1 System models.
Chapter 7: Software Engineering
Chapter 7: Software Engineering
Modern Systems Analysis and Design Third Edition
Modern Systems Analysis and Design Third Edition
Chapter 4 Automated Tools for Systems Development
Modern Systems Analysis and Design Third Edition
Modern Systems Analysis and Design Third Edition
Modern Systems Analysis and Design Third Edition
Presentation transcript:

Chapter 7-- Software Engineering 7.5 Tools of the Trade 楊家愉 應數一

Introduction In this section, we introduce : Modeling techniques ( 設計程式的技術 / 方法 ) Notational systems ( 標誌系統 )

Some Old Friends Although the imperative paradigm seeks to build software in terms of procedures, a way of identifying those procedures is to consider the data to be manipulated rather than the procedures themselves. The theory is that by studying how data moves through a system, one identifies the points at which either data formats are altered or data paths merge and split.

Some Old Friends Dataflow diagram means of representing the information gained form such dataflow studies. Arrows – represent data paths Ovals- represent points at which data manipulation occur Rectangles – represent data sources and stores

Affect of data flow diagram Not only assist in identifying procedures during the design stage of software development, but also useful when trying to gain an understanding of the proposed system during the analysis stage.

Data Flow Diagram

Data dictionary Has been used for years by software engineers Is a central repository of information about the data items appearing throughout a software system. Information of it Constitutes: 1.Valid entries in each item 2.Where the item is stored 3.Where the item is referenced in the software

Data dictionary Goal: – Improve communication between the stakeholders of a software system and the software engineer. – Converting all of the stakeholder needs into a requirements specification. – Helps ensure that the fact that part numbers are net really numeric will be revealed. – To establish uniformity throughout the system.

Unified Modeling Language Dataflow diagrams and data dictionaries Tools in the software engineering arsenal well before emergence of the object-oriented paradigm Continued to find useful roles even though the imperative paradigm

Has been developed with the object-oriented paradigm in mind. The tool that attempts merely to capture the image of the proposed system from the user’s point of view Unified Modeling Language

Use Case Diagram Depicts the proposed system as a large rectangle in which interactions between the system Its users are represented as ovals and users of the system are represented as stick figures.

Use Case Diagram

Class diagram Is a notational system for representing the structure of classes and relationships between classes. It can indicate how many instances of one class may be associated with instances of another

One-to-one relationship

One-to-many relationship

Many-to-many relationship

Interaction diagrams Sequence diagram Depicts the communication between the individuals that are involved in performing a task. Each rectangle together with its dashed line is called a life line.

Interaction diagram

Interaction fragments Are used to represent alternative sequences within one diagram. CRC (class-responsibility-collaboration) cards Is simply a card, on which the description of an object is written

Design Patterns Predeveloped model for solving a recurring problem in software design Adapter pattern provides a solution to a problem that often occurs when constructing software from prefabricated modules.

Design Patterns Decorator pattern means of designing a system that performs different combinations of the same activities depending on the situation at the time

Design Pattern The results of progress in design pattern development are reflected in the library of tools provided in today’s software development packages such as the Java programming environments provided by Oracle and the.NET Framework provided by Microsoft.

Design Pattern The origins of design patterns lie in the research of Christopher Alexander ( 克里斯托弗‧亞歷山 大 ) in traditional architecture. His goal was to identify features. Today, many of his ideas have been incorporated into software design and his work continues to be an inspiration for many software engineers.