Chapter 1 Modeling and the UML
|
|
|
- Candace Gregory
- 9 years ago
- Views:
Transcription
1 Chapter 1 Modeling and the UML The source code of an object-oriented software application is an implementation, in some programming language, of an object-oriented model. model: an approximate mental or visual image of a software system that serves as an aid in designing the system and in implementing the system in a programming language; a picture is worth a thousand words (or many lines of code) The Unified Modeling Language (UML) was created as a standard means of representing models for object-oriented software. The UML consists of several kinds of diagram, but we will restrict our use to the class diagram, or static-structure diagram. The class diagram allows the modeler to describe classifiers (kinds of software entities) and relationships among classifiers. The remainder of this chapter will be devoted to creating a UML class diagram for a small object-oriented software architecture. Our final diagram will show the four primary kinds of relationship between classifiers. Your objective for this chapter should be to understand those four relationships and their expression in the UML. 1.1 First-Person Shooter You have undoubtedly played, or at least seen played, a first-person shooter game. A key enjoyment in first-person shooter games is accumulating exotic weapons with which to kill one's opponents. We will model the weapons in such a game. In an actual game, our weapons model would be embedded in a much larger model that would include players, buildings, weather, etc.; for the sake of simplicity, we will not consider these other components.
2 2 Chapter 1 Modeling and the UML Classifiers In the author's favorite first-person shooter there are only projectile weapons, like shotguns or rail guns, and hand weapons, like fists or chainsaws. It seems reasonable to distinguish between weapons of these two types in our model, given their striking differences, the most obvious of which is that a projectile weapon has ammo while a hand weapon does not. A UML representation of the distinction between projectile and hand weapons appears below in Figure 1.1. Fig UML class diagram representing two kinds of weapon in a computer game Notice that each classifier is represented by a rectangle having three compartments. The classifier's name appears in the top compartment and the classifier's attributes and operations appear in the middle and bottom compartments, respectively. attribute: a characteristic, or trait, of a classifier; the values of an object's attributes are collectively referred to as the object's state operation: a behavior, or action, of a classifier Like any kind of real-world entity, a classifier's identity is determined by its characteristics and by the behaviors that follow from those characteristics. Balls can roll because they are round. The attribute round gives rise to the behavior roll.
3 1.1 First-Person Shooter Generalization The classifiers ProjectileWeapon and HandWeapon are connected to Weapon by solid arrows with unfilled triangular heads. This type of arrow simultaneously denotes generalization and specialization. generalization: a relationship between classifiers in which one classifier is said to be the kind of the other; e.g., a chair is a kind of furniture is a kind of manmade object, and so we might say that manmade object generalizes furniture, which generalizes chair; specialization is generalization viewed from the other direction chair specializes furniture, which specializes manmade object; the acronym ako, which signifies "a kind of," may be used in place of the term specializes The generalization arrows in Figure 1.1 tell us that Weapon generalizes, and therefore is specialized by, both ProjectileWeapon and Hand- Weapon. When classifier P generalizes classifier C, P is said to be the parent of C and C is said to be the child of P. A child classifier inherits all protected and public attributes and operations of its parent. A child classifier extends its parent in some way. For example, every Weapon has a real-number attribute called its mass. Because Weapon is the parent of ProjectileWeapon, a ProjectileWeapon also has the mass attribute. (A Weapon's mass might be used by the game to calculate the Weapon's weight; the weight would be used to adjust the acceleration and top speed of the player carrying the Weapon. A rocket launcher will slow its carrier down far more than will a silenced pistol.) In addition, ProjectileWeapon has an integer attribute called maxammo, which serves to distinguish ProjectileWeapons from HandWeapons. Class Weapon's second attribute, attackinterval, is of type int. This attribute corresponds to the time required to reload or recharge a projectile weapon, or in the case of a hand weapon, the time required to, say, throw another punch or draw back a whip in preparation for another crack.
4 4 Chapter 1 Modeling and the UML Association A Weapon also possesses a String called name. Because String is a class type rather than a primitive type, and we are creating a class diagram, we include the classifier String and show its relationship to Weapon. The UML term for the relationship is association, and it is denoted by a solid line. The term has-a is often used in place of association: a Weapon has-a String. Figure 1.2 shows the updated diagram. Fig UML class diagram depicting the has-a relationship between classes Weapon and String Each Weapon object will of course need to be displayed, or rendered, many times as the game is played, and the Weapon's appearance must vary depending on the perspective from which it is being viewed. This can be accomplished by giving each Weapon a collection of images, with each image showing the Weapon as it should appear from a particular perspective. In our model, class Weapon will have an array, images, of type Bitmap. Figure 1.3 shows this has-a relationship between classes Weapon and Bitmap.
5 1.1 First-Person Shooter 5 Fig UML class diagram depicting Weapon's association with Bitmap A projectile weapon, like a shotgun, makes a sound when it is fired or reloaded. And hand weapons also make sounds. A chainsaw, for example, idles when it is not being used to cut down an opponent, and makes a loud and rather annoying whine when its throttle is depressed. We will incorporate this characteristic of weapons into our model by giving class Weapon an array of type Sound. Figure 1.4 shows the new diagram. Fig UML class diagram depicting Weapon's association with Sound
6 6 Chapter 1 Modeling and the UML Dependency When a Weapon object is called upon to render itself, the object must be given certain information about how and where to do so. A Weapon might need to know where it is to appear on the display, by how much it should scale its size so as to create the illusion of distance, or how bright it should appear given the light level in its virtual environment. This information is collectively known as the object's current display context. The display context must not be an attribute of the Weapon object, for the Weapon's display context at any given moment has nothing to do with the Weapon itself, but is instead determined entirely by the Weapon's virtual environment. In other words, a given Weapon's display context is provided when the game requires the object to appear on the display. If the Weapon must be displayed again a fraction of a second later, its display context will probably have changed, and so the game must provide the Weapon with the new context. The Weapon will then use the new context to carry out its rendering operation. Class Weapon's render operation, and that operation's dependence on a fleeting display context, are shown in Figure 1.5. The relationship between classes Weapon and DisplayContext is called dependency, or uses-a. A Weapon uses-a DisplayContext to render itself. The dependency relationship is expressed in the UML by a dashed arrow with an open head. Fig UML class diagram depicting the uses-a relationship between classes Weapon and DisplayContext
7 1.1 First-Person Shooter Realization It is typical of first-person shooter games that at least several of each type of weapon are scattered throughout the game world, waiting to be found by players. It is desirable, then, that our model include some mechanism for copying a Weapon. It just so happens that the Java platform offers an interface called Cloneable for this very purpose. Any Java class that realizes interface Cloneable includes a method called clone. The clone method returns a copy of the object that called it. Figure 1.6 shows the realization relationship between class Weapon and interface Cloneable. In the UML, realization is indicated by a dashed arrow with an unfilled triangular head. Cloneable is stereotyped to make clearer the fact that it is an interface rather than a class. The «and» are called guillemets. We will soon have a closer look at interfaces. For now it suffices to say that realization is a kind of relationship between a class and an interface. Fig UML class diagram depicting Weapon's realization of Cloneable
8 8 Chapter 1 Modeling and the UML 1.2 From UML to Code The diagram of Figure 1.6 is not merely a pictorial representation of our model's structure. The diagram is also equivalent to Java code that implements the structure. That code can be generated from the UML diagram by most any UML software package. The programmer may then complete the implementation by coding bodies for the stubbed methods and by adding any fields or methods not shown in the model. The Java code corresponding to the diagram of Figure 1.6 is shown below. Each class definition would of course be in its own file. public class Bitmap {} public class DisplayContext {} public class Sound {} public abstract class Weapon implements Cloneable { protected float mass; protected int attackinterval; protected String name; protected Bitmap[] images; protected Sound[] sounds; } public void render(displaycontext dc) {} public Object clone() {} public class HandWeapon extends Weapon { protected float range; } public class ProjectileWeapon extends Weapon { protected int maxammo; }
9 Exercises 9 Exercises 1. Define association. 2. Define dependency. 3. In our weapons model, the dependency between classes Weapon and DisplayContext occurs by way of an operation's parameter. What other forms can a dependency take? 4. What relationship is missing from Figure 1.6? Hint: Consider your answer to Exercise Extend the model of Figure 1.6 so that it includes ammo. 6. Does the Java platform offer a class that we could use in place of the fictitious class Bitmap? 7. Does the Java platform offer a class that we could use in place of the fictitious class Sound? 8. Model a class called PlayingCard, a deck(s) of which could be used in a Blackjack simulation or interactive game. Class PlayingCard should realize java.io.serializable. A Serializable object can easily be transmitted across a network, which would be useful to someone developing an online casino application, for example.
10
UML Tutorial: Part 1 -- Class Diagrams.
UML Tutorial: Part 1 -- Class Diagrams. Robert C. Martin My next several columns will be a running tutorial of UML. The 1.0 version of UML was released on the 13th of January, 1997. The 1.1 release should
Classes and Objects. Agenda. Quiz 7/1/2008. The Background of the Object-Oriented Approach. Class. Object. Package and import
Classes and Objects 2 4 pm Tuesday 7/1/2008 @JD2211 1 Agenda The Background of the Object-Oriented Approach Class Object Package and import 2 Quiz Who was the oldest profession in the world? 1. Physician
Ready, Set, Go! Math Games for Serious Minds
Math Games with Cards and Dice presented at NAGC November, 2013 Ready, Set, Go! Math Games for Serious Minds Rande McCreight Lincoln Public Schools Lincoln, Nebraska Math Games with Cards Close to 20 -
VHDL Test Bench Tutorial
University of Pennsylvania Department of Electrical and Systems Engineering ESE171 - Digital Design Laboratory VHDL Test Bench Tutorial Purpose The goal of this tutorial is to demonstrate how to automate
Using UML Part One Structural Modeling Diagrams
UML Tutorials Using UML Part One Structural Modeling Diagrams by Sparx Systems All material Sparx Systems 2007 Sparx Systems 2007 Page 1 Trademarks Object Management Group, OMG, Unified Modeling Language,
The Crescent Primary School Calculation Policy
The Crescent Primary School Calculation Policy Examples of calculation methods for each year group and the progression between each method. January 2015 Our Calculation Policy This calculation policy has
Instructional Systems Design
Analysis and Design of Distance Learning Systems: Instructional Systems Design Contents The Purpose of Design Audience of Design documents Phases of Instructional Design Development of initial Content
Socci Sport Alternative Games
- 1 - Socci Sport Alternative Games Table of Contents 1 Roller Socci 2 2 Pass and Shoot Socci 2 3 Punt & Catch Socci 2 4 Long Pass Socci 3 5 Pass, Dribble, and Shoot Socci 3 6 Scooter Socci Basketball
ATM Case Study OBJECTIVES. 2005 Pearson Education, Inc. All rights reserved. 2005 Pearson Education, Inc. All rights reserved.
1 ATM Case Study 2 OBJECTIVES.. 3 2 Requirements 2.9 (Optional) Software Engineering Case Study: Examining the Requirements Document 4 Object-oriented design (OOD) process using UML Chapters 3 to 8, 10
CS 341 Software Design Homework 5 Identifying Classes, UML Diagrams Due: Oct. 22, 11:30 PM
CS 341 Software Design Homework 5 Identifying Classes, UML Diagrams Due: Oct. 22, 11:30 PM Objectives To gain experience doing object-oriented design To gain experience developing UML diagrams A Word about
1 of 7 9/5/2009 6:12 PM
1 of 7 9/5/2009 6:12 PM Chapter 2 Homework Due: 9:00am on Tuesday, September 8, 2009 Note: To understand how points are awarded, read your instructor's Grading Policy. [Return to Standard Assignment View]
Open XML Court Interface (OXCI) Architecture Proposal
Document version: 1.0 Author: Richard Himes Abstract Open XML Court Interface (OXCI) Architecture Proposal This document is a draft proposal for an approach to the design of the Open XML Court Interface
Board Games They are adaptations of classic board games. Examples of board games include Chess, Checkers, Backgammon, Scrabble and Monopoly.
Computer Games Computer games are programs that enable a player to interact with a virtual game environment for entertainment and fun. There are many types of computer games available, ranging from traditional
Part 1 Foundations of object orientation
OFWJ_C01.QXD 2/3/06 2:14 pm Page 1 Part 1 Foundations of object orientation OFWJ_C01.QXD 2/3/06 2:14 pm Page 2 1 OFWJ_C01.QXD 2/3/06 2:14 pm Page 3 CHAPTER 1 Objects and classes Main concepts discussed
Chapter 6: Programming Languages
Chapter 6: Programming Languages Computer Science: An Overview Eleventh Edition by J. Glenn Brookshear Copyright 2012 Pearson Education, Inc. Chapter 6: Programming Languages 6.1 Historical Perspective
UML Class Diagrams (1.8.7) 9/2/2009
8 UML Class Diagrams Java programs usually involve multiple classes, and there can be many dependencies among these classes. To fully understand a multiple class program, it is necessary to understand
UML FOR OBJECTIVE-C. Excel Software www.excelsoftware.com
UML FOR OBJECTIVE-C Excel Software www.excelsoftware.com Objective-C is a popular programming language for Mac OS X computers. The Unified Modeling Language (UML) is the industry standard notation for
Grade 7 Mathematics. Unit 2. Integers. Estimated Time: 15 Hours
Grade 7 Mathematics Integers Estimated Time: 15 Hours [C] Communication [CN] Connections [ME] Mental Mathematics and Estimation [PS] Problem Solving [R] Reasoning [T] Technology [V] Visualization Grade
UML Diagram Types. Use Cases do the Following. Use Case Diagram
UML Diagram Types Dynamic Models activity diagrams statechart diagrams interaction diagrams sequence diagrams collaboration diagrams use case diagrams Structural Models class diagrams object diagrams packages
There are a number of superb online resources as well that provide excellent blackjack information as well. We recommend the following web sites:
3. Once you have mastered basic strategy, you are ready to begin learning to count cards. By counting cards and using this information to properly vary your bets and plays, you can get a statistical edge
www.dynamicessentialz.com.. Tell Your Friends! IMPORTANT! PLEASE READ BEFORE USING CONTROLLER!
www.dynamicessentialz.com.. Tell Your Friends! IMPORTANT! PLEASE READ BEFORE USING CONTROLLER! Thank you for purchasing our Xbox 360 Infusion Modded Controller. This advisory will break down the controller
Lab 11. Simulations. The Concept
Lab 11 Simulations In this lab you ll learn how to create simulations to provide approximate answers to probability questions. We ll make use of a particular kind of structure, called a box model, that
Sequence Diagram Tutorial. From: UML Distilled, Third Edition, Chapter 4 M. Fowler
Sequence Diagram Tutorial From: UML Distilled, Third Edition, Chapter 4 M. Fowler Use Cases and Scenarios A use case is a collection of interactions between external actors and a system In UML, a use case
Object Oriented Programming. Risk Management
Section V: Object Oriented Programming Risk Management In theory, there is no difference between theory and practice. But, in practice, there is. - Jan van de Snepscheut 427 Chapter 21: Unified Modeling
That s Not Fair! ASSESSMENT #HSMA20. Benchmark Grades: 9-12
That s Not Fair! ASSESSMENT # Benchmark Grades: 9-12 Summary: Students consider the difference between fair and unfair games, using probability to analyze games. The probability will be used to find ways
Acceleration of Gravity Lab Basic Version
Acceleration of Gravity Lab Basic Version In this lab you will explore the motion of falling objects. As an object begins to fall, it moves faster and faster (its velocity increases) due to the acceleration
Fundamentals of Probability
Fundamentals of Probability Introduction Probability is the likelihood that an event will occur under a set of given conditions. The probability of an event occurring has a value between 0 and 1. An impossible
SYSTEMS OF EQUATIONS AND MATRICES WITH THE TI-89. by Joseph Collison
SYSTEMS OF EQUATIONS AND MATRICES WITH THE TI-89 by Joseph Collison Copyright 2000 by Joseph Collison All rights reserved Reproduction or translation of any part of this work beyond that permitted by Sections
OFFICIAL BASKETBALL RULES SUMMARY OF CHANGES 2014
OFFICIAL BASKETBALL RULES SUMMARY OF CHANGES 2014 1 No Charge Semi-circle Rule The no-charge semi-circle rule shall be applied when the defensive player has one foot or both feet in contact with the no-charge
ATM Case Study Part 1
ATM Case Study Part 1 A requirements document specifies the purpose of the ATM system and what it must do. Requirements Document A local bank intends to install a new automated teller machine (ATM) to
Introduction to Fractions, Equivalent and Simplifying (1-2 days)
Introduction to Fractions, Equivalent and Simplifying (1-2 days) 1. Fraction 2. Numerator 3. Denominator 4. Equivalent 5. Simplest form Real World Examples: 1. Fractions in general, why and where we use
KE =? v o. Page 1 of 12
Page 1 of 12 CTEnergy-1. A mass m is at the end of light (massless) rod of length R, the other end of which has a frictionless pivot so the rod can swing in a vertical plane. The rod is initially horizontal
CONNECTING LESSONS NGSS STANDARD
CONNECTING LESSONS TO NGSS STANDARDS 1 This chart provides an overview of the NGSS Standards that can be met by, or extended to meet, specific STEAM Student Set challenges. Information on how to fulfill
UML for the C programming language.
Functional-based modeling White paper June 2009 UML for the C programming language. Bruce Powel Douglass, PhD, IBM Page 2 Contents 2 Executive summary 3 FunctionalC UML profile 4 Functional development
Addition Methods. Methods Jottings Expanded Compact Examples 8 + 7 = 15
Addition Methods Methods Jottings Expanded Compact Examples 8 + 7 = 15 48 + 36 = 84 or: Write the numbers in columns. Adding the tens first: 47 + 76 110 13 123 Adding the units first: 47 + 76 13 110 123
NUMBER SYSTEMS APPENDIX D. You will learn about the following in this appendix:
APPENDIX D NUMBER SYSTEMS You will learn about the following in this appendix: The four important number systems in computing binary, octal, decimal, and hexadecimal. A number system converter program
The Progression from 4v4 to 11v11
The Progression from 4v4 to 11v11 The 4v4 game is the smallest model of soccer that still includes all the qualities found in the bigger game. The shape of the team is a smaller version of what is found
Blender Notes. Introduction to Digital Modelling and Animation in Design Blender Tutorial - week 9 The Game Engine
Blender Notes Introduction to Digital Modelling and Animation in Design Blender Tutorial - week 9 The Game Engine The Blender Game Engine This week we will have an introduction to the Game Engine build
The resulting tile cannot merge with another tile again in the same move. When a 2048 tile is created, the player wins.
2048 2048 is number puzzle game created in March 2014 by 19-year-old Italian web developer Gabriele Cirulli, in which the objective is to slide numbered tiles on a grid to combine them and create a tile
Chapter 7: Momentum and Impulse
Chapter 7: Momentum and Impulse 1. When a baseball bat hits the ball, the impulse delivered to the ball is increased by A. follow through on the swing. B. rapidly stopping the bat after impact. C. letting
ACTIVITY 6: Falling Objects
UNIT FM Developing Ideas ACTIVITY 6: Falling Objects Purpose and Key Question You developed your ideas about how the motion of an object is related to the forces acting on it using objects that move horizontally.
A flowchart is not a state machine
A flowchart is not a state machine Introduction There are several methods, models and tools used to describe control systems. Some examples are: state machines, Petri nets, Statecharts, flowcharts. Though
SOFTWARE DESIGN TECHNIQUES. Nagalaxmi Telkar CSCI 5828 Presentation Slides
SOFTWARE DESIGN TECHNIQUES Nagalaxmi Telkar CSCI 5828 Presentation Slides CONTENTS Introduction Software Design Life Cycle Software Design Process Tackling Design Problems Architectural Design Abstract
How to Play. It s a Random, Rapid-Fire Card Shoot-Out!
How to Play Ages 7 and Up 2 to 10 Players Game It s a Random, Rapid-Fire Card Shoot-Out! CONTENTS 112 cards as follows: 18 Blue cards - 1 to 9 18 Green cards - 1 to 9 18 Red cards - 1 to 9 18 Yellow cards
User experience storyboards: Building better UIs with RUP, UML, and use cases
Copyright Rational Software 2003 http://www.therationaledge.com/content/nov_03/f_usability_jh.jsp User experience storyboards: Building better UIs with RUP, UML, and use cases by Jim Heumann Requirements
History OOP languages Year Language 1967 Simula-67 1983 Smalltalk
History OOP languages Intro 1 Year Language reported dates vary for some languages... design Vs delievered 1957 Fortran High level programming language 1958 Lisp 1959 Cobol 1960 Algol Structured Programming
Masters programmes in Computer Science and Information Systems. Object-Oriented Design and Programming. Sample module entry test xxth December 2013
Masters programmes in Computer Science and Information Systems Object-Oriented Design and Programming Sample module entry test xxth December 2013 This sample paper has more questions than the real paper
Umbrello UML Modeller Handbook
2 Contents 1 Introduction 7 2 UML Basics 8 2.1 About UML......................................... 8 2.2 UML Elements........................................ 9 2.2.1 Use Case Diagram.................................
Technical document. Group 3 Mate Tomin Pieter van Ede Raymond Weijermars Daniel Faustino Stefan Hospes
Technical document Group 3 Mate Tomin Pieter van Ede Raymond Weijermars Daniel Faustino Stefan Hospes Table of contents 1) Introduction... 2 2) System setup... 2 3) Implementation overview... 4 3.1) Client-side...
Force on Moving Charges in a Magnetic Field
[ Assignment View ] [ Eðlisfræði 2, vor 2007 27. Magnetic Field and Magnetic Forces Assignment is due at 2:00am on Wednesday, February 28, 2007 Credit for problems submitted late will decrease to 0% after
2 SYSTEM DESCRIPTION TECHNIQUES
2 SYSTEM DESCRIPTION TECHNIQUES 2.1 INTRODUCTION Graphical representation of any process is always better and more meaningful than its representation in words. Moreover, it is very difficult to arrange
Current California Math Standards Balanced Equations
Balanced Equations Current California Math Standards Balanced Equations Grade Three Number Sense 1.0 Students understand the place value of whole numbers: 1.1 Count, read, and write whole numbers to 10,000.
Decimals and Percentages
Decimals and Percentages Specimen Worksheets for Selected Aspects Paul Harling b recognise the number relationship between coordinates in the first quadrant of related points Key Stage 2 (AT2) on a line
ARCHERY Environmental Education Lesson EDWARDS CAMP AND CONFERENCE CENTER
ARCHERY Environmental Education Lesson EDWARDS CAMP AND CONFERENCE CENTER SUMMARY Students will learn the parts of a bow and arrow, and archery techniques and safety. They practice what they learn, shooting
Hoover High School Math League. Counting and Probability
Hoover High School Math League Counting and Probability Problems. At a sandwich shop there are 2 kinds of bread, 5 kinds of cold cuts, 3 kinds of cheese, and 2 kinds of dressing. How many different sandwiches
8.2. Solution by Inverse Matrix Method. Introduction. Prerequisites. Learning Outcomes
Solution by Inverse Matrix Method 8.2 Introduction The power of matrix algebra is seen in the representation of a system of simultaneous linear equations as a matrix equation. Matrix algebra allows us
Toad for Oracle 8.6 SQL Tuning
Quick User Guide for Toad for Oracle 8.6 SQL Tuning SQL Tuning Version 6.1.1 SQL Tuning definitively solves SQL bottlenecks through a unique methodology that scans code, without executing programs, to
Name of Lesson: Properties of Equality A Review. Mathematical Topic: The Four Properties of Equality. Course: Algebra I
Name of Lesson: Properties of Equality A Review Mathematical Topic: The Four Properties of Equality Course: Algebra I Time Allocation: One (1) 56 minute period Pre-requisite Knowledge: The students will
L20: GPU Architecture and Models
L20: GPU Architecture and Models scribe(s): Abdul Khalifa 20.1 Overview GPUs (Graphics Processing Units) are large parallel structure of processing cores capable of rendering graphics efficiently on displays.
Going Interactive: Combining Ad-Hoc and Regression Testing
Going Interactive: Combining Ad-Hoc and Regression Testing Michael Kölling 1, Andrew Patterson 2 1 Mærsk Mc-Kinney Møller Institute, University of Southern Denmark, Denmark [email protected] 2 Deakin University,
Work, Energy & Momentum Homework Packet Worksheet 1: This is a lot of work!
Work, Energy & Momentum Homework Packet Worksheet 1: This is a lot of work! 1. A student holds her 1.5-kg psychology textbook out of a second floor classroom window until her arm is tired; then she releases
Using Rational Rose to Create Object-Oriented Diagrams
Using Rational Rose to Create Object-Oriented Diagrams This is a brief overview to get students started in using Rational Rose to quickly create object-oriented models and diagrams. It is not by any means
Introduction. UML = Unified Modeling Language It is a standardized visual modeling language.
UML 1 Introduction UML = Unified Modeling Language It is a standardized visual modeling language. Primarily intended for modeling software systems. Also used for business modeling. UML evolved from earlier
MATHEMATICS: REPEATING AND GROWING PATTERNS First Grade. Kelsey McMahan. Winter 2012 Creative Learning Experiences
MATHEMATICS: REPEATING AND GROWING PATTERNS Kelsey McMahan Winter 2012 Creative Learning Experiences Without the arts, education is ineffective. Students learn more and remember it longer when they are
Object-oriented design methodologies
Object-oriented design methodologies An object-oriented methodology is defined as the system of principles and procedures applied to object-oriented software development. Five years ago, there was no standard
Speed, velocity and acceleration
Chapter Speed, velocity and acceleration Figure.1 What determines the maximum height that a pole-vaulter can reach? 1 In this chapter we look at moving bodies, how their speeds can be measured and how
Fifth Grade Physical Education Activities
Fifth Grade Physical Education Activities 89 Inclement Weather PASS AND COUNT RESOURCE Indoor Action Games for Elementary Children, pg. 129 DESCRIPTION In this game, students will be ordering whole numbers.
PROG0101 Fundamentals of Programming PROG0101 FUNDAMENTALS OF PROGRAMMING. Chapter 3 Algorithms
PROG0101 FUNDAMENTALS OF PROGRAMMING Chapter 3 1 Introduction to A sequence of instructions. A procedure or formula for solving a problem. It was created mathematician, Mohammed ibn-musa al-khwarizmi.
Design and UML Class Diagrams. Suggested reading: Practical UML: A hands on introduction for developers http://dn.codegear.
Design and UML Class Diagrams Suggested reading: Practical UML: A hands on introduction for developers http://dn.codegear.com/article/31863 UML Distilled Ch. 3, by M. Fowler 1 Big questions What is UML?
Team Defending. Understand the terms that describe the roles of players and parts of the field. The person you are marking.
Team Defense is a Dance Team Defending Dancers must learn individual dance steps, but must also learn to dance in rhythm with other dancers, and must never miss a beat. Team defense is a dance. The individual
CmpSci 187: Programming with Data Structures Spring 2015
CmpSci 187: Programming with Data Structures Spring 2015 Lecture #12 John Ridgway March 10, 2015 1 Implementations of Queues 1.1 Linked Queues A Linked Queue Implementing a queue with a linked list is
Use Square Roots to Solve Quadratic Equations
10.4 Use Square Roots to Solve Quadratic Equations Before You solved a quadratic equation by graphing. Now You will solve a quadratic equation by finding square roots. Why? So you can solve a problem about
Friction and Gravity. Friction. Section 2. The Causes of Friction
Section 2 Friction and Gravity What happens when you jump on a sled on the side of a snow-covered hill? Without actually doing this, you can predict that the sled will slide down the hill. Now think about
Multiplication. Year 1 multiply with concrete objects, arrays and pictorial representations
Year 1 multiply with concrete objects, arrays and pictorial representations Children will experience equal groups of objects and will count in 2s and 10s and begin to count in 5s. They will work on practical
CHAPTER 14 Understanding an App s Architecture
CHAPTER 14 Understanding an App s Architecture Figure 14-1. This chapter examines the structure of an app from a programmer s perspective. It begins with the traditional analogy that an app is like a recipe
Ch5: Discrete Probability Distributions Section 5-1: Probability Distribution
Recall: Ch5: Discrete Probability Distributions Section 5-1: Probability Distribution A variable is a characteristic or attribute that can assume different values. o Various letters of the alphabet (e.g.
25 Integers: Addition and Subtraction
25 Integers: Addition and Subtraction Whole numbers and their operations were developed as a direct result of people s need to count. But nowadays many quantitative needs aside from counting require numbers
SHOOTING FUNDAMENTALS
SHOOTING FUNDAMENTALS BY ROB BABCOCK GENERAL MANAGER, TORONTO RAPTORS BASKETBALL CLUB I strongly believe that the most successful basketball teams are the teams that play the game for the true values the
what operations can it perform? how does it perform them? on what kind of data? where are instructions and data stored?
Inside the CPU how does the CPU work? what operations can it perform? how does it perform them? on what kind of data? where are instructions and data stored? some short, boring programs to illustrate the
Converting from Fractions to Decimals
.6 Converting from Fractions to Decimals.6 OBJECTIVES. Convert a common fraction to a decimal 2. Convert a common fraction to a repeating decimal. Convert a mixed number to a decimal Because a common fraction
Numeracy Targets. I can count at least 20 objects
Targets 1c I can read numbers up to 10 I can count up to 10 objects I can say the number names in order up to 20 I can write at least 4 numbers up to 10. When someone gives me a small number of objects
Unification of AOP and FOP in Model Driven Development
Chapter 5 Unification of AOP and FOP in Model Driven Development I n this chapter, AOP and FOP have been explored to analyze the similar and different characteristics. The main objective is to justify
SIXTEEN PLAYERS, TWO DICE, ONE SHOOTER
SIXTEEN PLAYERS, TWO DICE, ONE SHOOTER Craps is the most exciting game at Potawatomi Bingo Casino. One shooter of the dice determines the outcome for up to 15 other players. Craps also features a variety
Unit 6 Number and Operations in Base Ten: Decimals
Unit 6 Number and Operations in Base Ten: Decimals Introduction Students will extend the place value system to decimals. They will apply their understanding of models for decimals and decimal notation,
WELCOME TO PAYDAY 2 CRIME.NET
WELCOME TO PAYDAY 2 PAYDAY 2 IS AN ACTION-PACKED, FOUR-PLAYER CO-OP SHOOTER THAT ONCE AGAIN LETS GAMERS DON THE MASKS OF THE ORIGINAL PAYDAY CREW - DALLAS, HOXTON, WOLF AND CHAINS - AS THEY DESCEND ON
Dr. Pat Mirenda. Software Design Specification Document
CPSC 319 Team 2 Dr. Pat Mirenda Software Design Specification Document Version: 1.2 Date: (03/17/2006) 2Communicate SDS Revisions Version Primary Author(s) Description of Version Date Completed 1.0 Wei
CSE 1020 Introduction to Computer Science I A sample nal exam
1 1 (8 marks) CSE 1020 Introduction to Computer Science I A sample nal exam For each of the following pairs of objects, determine whether they are related by aggregation or inheritance. Explain your answers.
IDPA 3-gun Shoot Spring 2013 Stage instructions
IDPA 3-gun Shoot Spring 2013 Stage instructions Stage 1: Rifle Skill at Arms Course of Fire: 3 positions standing, kneeling, prone No Concealment Round Count: 18 rounds rifle Target Distance: 20-60 yard
Entity-Relationship Model. Purpose of E/R Model. Entity Sets
Entity-Relationship Model Diagrams Class hierarchies Weak entity sets 1 Purpose of E/R Model The E/R model allows us to sketch the design of a database informally. Designs are pictures called entityrelationship
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
10 FREE BASKETBALL DRILLS
BASKETBALL DRILLS AND PRACTICE PLANS 1 10 FREE BASKETBALL DRILLS by Coach Patrick Anderson BASKETBALL DRILLS AND PRACTICE PLANS 2 CONTENTS 1.1 Rapid Swing Pass... 3 1.2 Box Out React Drill... 3 1.3 Bump...
Topics. Introduction. Java History CS 146. Introduction to Programming and Algorithms Module 1. Module Objectives
Introduction to Programming and Algorithms Module 1 CS 146 Sam Houston State University Dr. Tim McGuire Module Objectives To understand: the necessity of programming, differences between hardware and software,
COMP 250 Fall 2012 lecture 2 binary representations Sept. 11, 2012
Binary numbers The reason humans represent numbers using decimal (the ten digits from 0,1,... 9) is that we have ten fingers. There is no other reason than that. There is nothing special otherwise about
Charlesworth School Year Group Maths Targets
Charlesworth School Year Group Maths Targets Year One Maths Target Sheet Key Statement KS1 Maths Targets (Expected) These skills must be secure to move beyond expected. I can compare, describe and solve
Rose/Architect: a tool to visualize architecture
Published in the Proceedings of the 32 nd Annual Hawaii International Conference on Systems Sciences (HICSS 99) Rose/Architect: a tool to visualize architecture Alexander Egyed University of Southern California
not necessarily strictly sequential feedback loops exist, i.e. may need to revisit earlier stages during a later stage
Database Design Process there are six stages in the design of a database: 1. requirement analysis 2. conceptual database design 3. choice of the DBMS 4. data model mapping 5. physical design 6. implementation
LAB 6 - GRAVITATIONAL AND PASSIVE FORCES
L06-1 Name Date Partners LAB 6 - GRAVITATIONAL AND PASSIVE FORCES OBJECTIVES And thus Nature will be very conformable to herself and very simple, performing all the great Motions of the heavenly Bodies
