Requirements Analysis

Similar documents
Requirements Analysis 1: Requirements and Classes

What are Information Systems?

What Is Object-Orientation?

Goals of the Lecture UML Implementation Diagrams

Τεχνολογία Λογισμικού

Baan Finance Financial Statements

Task scenarios Outline. Scenarios in Knowledge Extraction. Proposed Framework for Scenario to Design Diagram Transformation

Outline. Research Definition. Motivation. Foundation of Reverse Engineering. Dynamic Analysis and Design Pattern Detection in Java Programs

Customer Portal Quick Reference User Guide

Elements of a Class Diagram. Class Diagram

Protected points in ordered trees

NTH, GEOMETRIC, AND TELESCOPING TEST

GE FUNDAMENTALS OF COMPUTING AND PROGRAMMING UNIT III

Baan Tools User Management

Ones Assignment Method for Solving Traveling Salesman Problem

A SOFTWARE MODEL FOR THE MULTILAYER PERCEPTRON

1 Enterprise Modeler

9.1. Sequences and Series. Sequences. What you should learn. Why you should learn it. Definition of Sequence

Computers and Scientific Thinking

Goals of this Lecture Activity Diagram Example

CSC 220: Computer Organization Unit 11 Basic Computer Organization and Design

CS 111: Program Design I Lecture 21: Network Analysis. Robert H. Sloan & Richard Warner University of Illinois at Chicago April 10, 2018

In this chapter, you learn the concepts and terminology of databases and

Security of Bluetooth: An overview of Bluetooth Security

Analysis of Class Design Coupling Based on Information Entropy Di Jiang 1,2, a, Hua Zhou 1,2,b and Xingping Sun 1,2,c

The Penta-S: A Scalable Crossbar Network for Distributed Shared Memory Multiprocessor Systems

Lecture 5. Counting Sort / Radix Sort

1.8 What Comes Next? What Comes Later?

c-dominating Sets for Families of Graphs

Area As A Limit & Sigma Notation

CHAPTER IV: GRAPH THEORY. Section 1: Introduction to Graphs

CS 111: Program Design I Lecture 19: Networks, the Web, and getting text from the Web in Python

Copyright 2016 Ramez Elmasri and Shamkant B. Navathe

Normal Distributions

USER GUIDE FOR VENDOR LISTING DATASHEET

BOOLEAN MATHEMATICS: GENERAL THEORY

Term Project Report. This component works to detect gesture from the patient as a sign of emergency message and send it to the emergency manager.

Big-O Analysis. Asymptotics

Weston Anniversary Fund

USB TO PARALLEL USB to DB25 Parallel Adapter Cable

Arithmetic Sequences

CIS 121 Data Structures and Algorithms with Java Fall Big-Oh Notation Tuesday, September 5 (Make-up Friday, September 8)

HAFOD MAKING A COMPLAINT [NEW]_Layout 1 21/03/ :06 Page 1 MAKING A COMPLAINT

Topics. Instance object. Instance object. Fundamentals of OT. Object notation. How do objects collaborate? Pearson Education 2007 Appendix (RASD 3/e)

Pseudocode ( 1.1) Analysis of Algorithms. Primitive Operations. Pseudocode Details. Running Time ( 1.1) Estimating performance

Guide to Applying Online

Recursive Procedures. How can you model the relationship between consecutive terms of a sequence?

Goals of the Lecture Object Constraint Language

The isoperimetric problem on the hypercube

Automatic Generation of Minimal and Safe Transactions in Conceptual Database Design

MOTIF XF Extension Owner s Manual

Pruning and Summarizing the Discovered Time Series Association Rules from Mechanical Sensor Data Qing YANG1,a,*, Shao-Yu WANG1,b, Ting-Ting ZHANG2,c

System and Software Architecture Description (SSAD)

Counting the Number of Minimum Roman Dominating Functions of a Graph

Data Structures and Algorithms. Analysis of Algorithms

DEFENCE SUPPLIERS AUSTRALIA S MOST UP-TO-DATE DEFENCE INDUSTRY GUIDE

Recursion. Recursion. Mathematical induction: example. Recursion. The sum of the first n odd numbers is n 2 : Informal proof: Principle:

Keywords Software Architecture, Object-oriented metrics, Reliability, Reusability, Coupling evaluator, Cohesion, efficiency

BEA Tuxedo. Creating CORBA Server Applications

. Written in factored form it is easy to see that the roots are 2, 2, i,

Morgan Kaufmann Publishers 26 February, COMPUTER ORGANIZATION AND DESIGN The Hardware/Software Interface. Chapter 5

Extending The Sleuth Kit and its Underlying Model for Pooled Storage File System Forensic Analysis

CSC165H1 Worksheet: Tutorial 8 Algorithm analysis (SOLUTIONS)

ENGI 4421 Probability and Statistics Faculty of Engineering and Applied Science Problem Set 1 Descriptive Statistics

Chapter 5. Functions for All Subtasks. Copyright 2015 Pearson Education, Ltd.. All rights reserved.

Empirical Validate C&K Suite for Predict Fault-Proneness of Object-Oriented Classes Developed Using Fuzzy Logic.

WEBSITE STRUCTURE IMPROVEMENT USING ANT COLONY TECHNIQUE

What are we going to learn? CSC Data Structures Analysis of Algorithms. Overview. Algorithm, and Inputs

How do we evaluate algorithms?

Chapter 4. Procedural Abstraction and Functions That Return a Value. Copyright 2015 Pearson Education, Ltd.. All rights reserved.

Mindmapping: A General Purpose (Test) Planning Tool

Parabolic Path to a Best Best-Fit Line:

DEFINITION OF CELL BEHAVIOUR. Actions and Behaviour. CELL = a CELL CELL = b CELL

Python Programming: An Introduction to Computer Science

Using the Keyboard. Using the Wireless Keyboard. > Using the Keyboard

Modern Systems Analysis and Design Seventh Edition

Analysis of Algorithms

The Graphs of Polynomial Functions

Creating Exact Bezier Representations of CST Shapes. David D. Marshall. California Polytechnic State University, San Luis Obispo, CA , USA

Ch 9.3 Geometric Sequences and Series Lessons

Τεχνολογία Λογισμικού

Running Time. Analysis of Algorithms. Experimental Studies. Limitations of Experiments

Computer Science Foundation Exam. August 12, Computer Science. Section 1A. No Calculators! KEY. Solutions and Grading Criteria.

Chapter 2 Conceptual Data Modeling

State-space feedback 6 challenges of pole placement

Appendix D. Controller Implementation

Running Time ( 3.1) Analysis of Algorithms. Experimental Studies. Limitations of Experiments

Analysis of Algorithms

An (or ) is a sequence in which each term after the first differs from the preceding term by a fixed constant, called the.

Octahedral Graph Scaling

Java Inheritance. Class ADT (Abstract Data Type) Interface. Classes implement the concept of ADT: Interfaces define interaction contracts: Rui Moreira

Introduction to Data Management. Lecture #3 E-R Model, Continued

Princeton Instruments Reference Manual

Avid Interplay Bundle

BEA WebLogic XML/Non-XML Translator

Guide for Online Renewal

Elementary Educational Computer

University of Waterloo Department of Electrical and Computer Engineering ECE 250 Algorithms and Data Structures

27 Refraction, Dispersion, Internal Reflection

New Results on Energy of Graphs of Small Order

Transcription:

Iformatio Systems Cocepts Requiremets Aalysis Roma Kotchakov Birkbeck, Uiversity of Lodo Based o Chapter 7 of Beett, McRobb ad Farmer: Object Orieted Systems Aalysis ad Desig Usig UML, (4th Editio), McGraw Hill, 2010 1

Outlie Class Diagrams Sectio 7.3 (pp. 184 194) Sectio 7.5.5 7.5.10 (pp. 208 215) Sectio 7.5.2 (pp. 198 201) 2

Class Diagrams Class (ad Object/Istace) Stereotypes Attributes (ad State) Associatios (ad Liks) Multiplicity Operatios Symbols of Istaces, States, ad Liks are used i other UML diagram types (Object Diagrams, Commuicatio Diagrams, etc.) 3

Notatio: Class class ame compartmet attributes compartmet operatios compartmet Cliet compayaddress compayemail compayfax compayname compaytelephoe 4

Notatio: Object/Istace object ame compartmet attribute values FoodCo:Cliet compayaddress=evas Farm, Norfolk compayemail=mail@foodco.com compayfax=01589-008636 compayname=foodco compaytelephoe=01589-008638 istaces do ot have operatios 5

Attributes Attributes are: part of the essetial descriptio of a class the commo structure of what all objects of the class ca kow each object has its ow value for each attribute of its class attribute values characterize state of the object 6

Notatio: Attributes Campaig actualcost campaigfiishdate campaigstartdate completiodate datepaid estimatedcost title checkcampaigbudget ( ) getcampaigcotributio ( ) recordpaymet ( ) setcompleted ( ) 7

Liks Yellow Partridge:Cliet a lik is a logical coectio betwee two objects FoodCo:Cliet Grace Chia:StaffMember Soog Motor Co:Cliet Carlos Mocada:StaffMember 8

Associatios A associatios represet the possibility of a logical relatioship or coectio betwee objects of oe class ad objects of aother If two objects ca be liked, their classes have a associatio 9

Notatio: Associatios associatio associatio role StaffMember staffcotact staffname staffno liaises with staffstartdate Cliet compayaddress compayemail compayfax compayname compaytelephoe associatio ame directio i which ame should be read 10

Notatio: Associatios StaffGrade gradestartdate gradefiishdate previous associatio role followig

Multiplicity The multiplicity of a associatio is the rage of permitted cardialities of its participatig objects, accordig to or busiess rules. for example: ay bak customer may have oe or more accouts every idividual accout is for oe, ad oly oe, customer 12

Notatio: Multiplicity : exactly *: ay umber m..: ay umber i the rage m to (iclusive) 0..1: optioal (i.e., either oe or 1) 1..*: at least oe 13

Notatio: Multiplicity StaffMember staffname staffno staffstartdate multiplicities 1 0..* liaises with Cliet compayaddress compayemail compayfax compayname compaytelephoe A staff member may liaise with ay umber of cliets (icludig 0) Each cliet is liaised with exactly oe staff member See Also: Figure 7.9-7.11 (p. 191) 14

Operatios Operatios are: part of the essetial descriptio of a class the commo behaviour that all objects of the class ca do get or set attribute values (ot specified i Aalysis Model) perform calculatios sed messages to other objects create or destroy liks (ot specified i Aalysis Model) services that objects of a class ca provide to other objects 15

Notatio: Operatios Campaig actualcost campaigfiishdate campaigstartdate completiodate datepaid estimatedcost title checkcampaigbudget ( ) getcampaigcotributio ( ) recordpaymet ( ) setcompleted ( ) 16

Static Aalysis with UML Requiremets Model Aalysis Model Desig Model To Draw a Aalysis Class Diagram Idetify Classes Determie Stereotypes Fid ad Locate Attributes Add Associatios Determie Multiplicity Fid ad Locate Operatios 17

Lookig for Potetial Classes Category People Orgaisatios Structures Physical thigs Abstractios of people Abstractios of physical thigs Coceptual thigs Edurig relatioships betwee members of other categories. Examples Mr Harmsworth (a campaig maager), Dilip (a copywriter). Joes & Co (a forklift truck distributor), the Soog Motor Compay, Agate s Creative Departmet. Team, project, campaig, assembly. Fork-lift truck, electric drill, tube of toothpaste. Employee, supervisor, customer, cliet. Wheeled vehicle, had tool, retail goods. Campaig, employee, rule, team, project, customer, qualificatio. Sale, purchase, cotract, campaig, agreemet, assembly, employmet. 18

Idetifyig Classes Should this really be cosidered as a class? Is it beyod the scope of the system? Does it refer to the system as a whole? Does it duplicate aother class? Is it too vague? Is it too specific? Is it too tied up with physical iputs ad outputs? Is it really a attribute? Is it really a operatio? Is it really a associatio? If ay aswer is Yes, cosider modellig the potetial class i some other way (or do ot model it at all). 19

Take Home Messages Class Diagrams Class (ad Object/Istace) Attributes (ad State) Associatios (ad Liks) Multiplicity Operatios 20