Session 3b: Defining data items
|
|
- Maurice Gilbert
- 6 years ago
- Views:
Transcription
1 Session 3b: Defining data items Sources of data items Establishing a project data dictionary Defining an elementary item Defining a composite data item COMP 320 / 420, Spring, 2018 Mr. Weisert Q: Which data items need to be formally defined in the ESD? A: Every data item that appears in an output specification a process specification a dataflow diagram another data item definition What else is there? When do we define a data item? The most important ones (esp. those that the sponsoring end users must understand and approve) by the systems analyst as part of ESD. But additional data items are identified and defined, as needed, throughout the project. What constitutes a rigorous data-item definition? A. Composite data item: Purpose, need. List of its component data items Criteria for conditional or repeated inclusion of a component item. B. Elementary data item: Major subtype Unambiguous specification of its meaning Exception: if the data name is truly self-defining (note: very few are) Essential attributes 1. Defining elementary items Many Java programmers often don't bother to use the object paradigm on elementary data items. Why not? But there are great benefits to doing so: In fact, many experts consider it a serious error to use primitive (built-in) types in an O.O. programming language for any data that has a unit of measure. Even in Java Or at least in specification documentation. Why? COMP 320/420, fall, copyright 2006 Conrad Weisert
2 A common objection But it's obvious. Everyone knows what a renewal date is? amount quantity value result total Which data names are self-defining? temperature discount commission totalsales overtimehours Which ones could be class names? Which could be instances of a class (objects)? amount quantity value result total Possible class names Why none of the others? temperature discount commission totalsales overtimehours Common data names to be avoided for members (too generic) amount quantity value result total Exception: An elementary item class with a single member data item (Distance, Weight, Money, etc.) may call that member data item value. Why? But never call an accessor function getvalue()! Why not? COMP 320/420, fall, copyright 2006 Conrad Weisert
3 The data dictionary A repository for data definitions Can be maintained by a data-dictionary (C.A.S.E.) product on paper or a stack of cards in a spreadsheet Its scope can be a single project a company or other organization an industry group Its purposes include: To standardize data names To standardize data representations To clarify data meaning Benefits of data standards Standard data names Facilitate understanding of programs and documents Minimize duplication Standard data representations Simplify data exchange between systems Promote re-usable program modules 2. Defining composite items Examples: EmployeeRecord MailingAddress LibraryItem Notations: Physical layout diagram (obsolete -- Why?) Programming language (augmented struct ) XML schema DeMarco (used in Robertson text ch. 2.9) Easy for untrained users (project sponsors) to understand Attributes of composite data items List of component data items with rules for including them Can often be defined by a language-dependent commented structure definition (C struct). De Marco's language-independent notation for specifying a composite data item: Symbol Meaning = is composed of + followed by ( ) optional component { } iteration [ ] alternatives COMP 320/420, fall, copyright 2006 Conrad Weisert
4 Composite item definition Example using DeMarco notation: EmployeeRecord = name + dateofbirth + + { dependentinfo } datehired + monthlysalary [ ] + (previousemployer) + etc. Is the application system implementation obliged to mimic this exactly? Defining an elementary data item Specify: 1. A unique descriptive data name 2. The type of item What are the possibilities? 3. Essential attributes appropriate to the type may include external representation(s) Why not internal representation? 4. Its exact meaning in the application domain (real world) Discrete Numeric Text Logical Types of elementary item Are there any others? What does each of those signify? How does your favorite programming language specify them,? Which of the four basic subtypes does each of these elementary data items belong to unitcost zipcode datehired homephonenumber insidetemperature batterypower paymentduedate shippingweight courseduration startingtime accountnumber creditlimit creditapproval booktitle altitude COMP 320/420, fall, copyright 2006 Conrad Weisert
5 Should the type of the colored ones be specified as numeric? shippingweight courseduration startingtime accountnumber creditlimit creditapproval booktitle altitude Why? What subclasses are the colored ones instances of? unitcost zipcode datehired homephonenumber insidetemperature batterypower paymentduedate Specifying numeric classes We save work and assure consistency by defining classes for common objects Money unitcost creditlimit Date datehired paymentduedate TimeOfDay startingtime We can do this in the ESD even if we're not using object-oriented technology. Defining a numeric item So, the type of altitude should be specified as Distance, not numeric. The analyst doesn't bother specifying the unit of measure and the precision for altitude--they're inherited from Distance. The Distance generic class may also specify a default external representation. If that's acceptable for altitude, the analyst can ignore it. The analyst has to specify a couple of other attributes of a numeric data item. Numeric data item attributes unit of measure Note: Programmers are not obliged to use it as the internal representation range minimum and maximum possible values precision smallest meaningful increment default external representation When an item inherits from a class, the analyst specifies only what's special to the item, often just the range. COMP 320/420, fall, copyright 2006 Conrad Weisert
6 Numeric data item definition -- Example Name: monthlysalary (of an employee) Type: Money Range: <$1,200, $400,000> Meaning: Base monthly salary as of the first day of the current month. Kinds of Discrete data item: A. Limited (small) set of possible values Known now, unlikely to grow much [single, married, widowed, divorced, unknown] sex [male, female, unknown] state (of the U.S.) B. Larger set of possible values How is type A often implemented for input editing? color C.Unlimited (huge) set of possible values telephonenumber empoyeeid How do we specify each? Defining a text data item Many examples are names of something personname booktitle companyname They often have some structure format, punctuation, maximum length Others are descriptions of something productdescription Or free text customerreview Representing text data Unlike many other programming languages (Cobol, PL/I, Basic) C, a small language, supported no text (or string) data type. Why? Instead, C programmers could define an array of single characters (bytes). Clumsy and error prone. With OOP (C++, Java, C#) the array handling could then be hidden inside objects of a string class. That works well. As a consequence programmers who are used to one of the C-family of languages, may think that a text data item is naturally just a kind of array! (It isn't, but that shouldn't concern the systems analyst.) COMP 320/420, fall, copyright 2006 Conrad Weisert
7 Defining a composite data item A composite item is made up of a fixed arrangement of other data items. It's sometimes (traditionally) called a record (or a dataflow or a strtucture). It's defined in terms of its components. But we may also specify its purpose or usage. We hope those components don't change often. COMP 320/420, fall, copyright 2006 Conrad Weisert
Ways of documenting Session 5: detailed requirements The Data Dictionary one any The Project A data dictionary Data Dictionary may be maintained
Session 5: The Data Dictionary relationship to systems analysis methodologies relationship to project management data definition vs. data representation taxonomy of data types COMP 477 /377, Spring, 2017
More informationWays of documenting Session 5: detailed requirements The Data Dictionary one any The Project A data dictionary Data Dictionary may be maintained
Session 5: The Data Dictionary relationship to systems analysis methodologies relationship to project management data definition vs. data representation taxonomy of data types COMP 477 /377, Fall, 2018
More informationWeek 11: Case study: Designing, building, & testing a Person class Background for the Project Needed in many applications Is it possible? practical?
Week 11: Case study: Designing, building, & testing a Person class Background for the Project Needed in many applications Is it possible? practical? Background Many applications deal with records representing
More informationSession 3: Data. Session 3a: Data
Session 3: Data Part a: 1. Data types 2. Data representation Part b: Data definition Computer programs manipulate two kinds of data Which are of interest to the analyst? A. Application domain data Exist
More informationWeek 6: Data. Let's focus first on application domain data.
review of things we already (should) know criteria for external & internal representation basic elementary data types composite data types container data types derived subtypes abstract data types (ADT)
More informationSession 2b: structured specifications Purpose and criteria Structured specification components Introduction to dataflow diagrams
Session 2b: structured specifications Purpose and criteria Structured specification components Introduction to dataflow diagrams COMP 320 / 420, Spring, 2018 Conrad Weisert Criteria for the ESD (from session
More informationSession 4b: Review of Program Quality
Session 4b: Review of Program Quality What makes one program "better" than another? COMP 170 -- Fall, 2013 Mr. Weisert What is a good program? Suppose we give the same assignment to two programmers (or
More informationSession 2. Getting started with a well-structured system specification
Session 2 Getting started with a well-structured system specification COMP 320/420 Spring, 2018 Conrad Weisert The situation A representative approaches us. (or vice versa) He or she may be a. an executive
More informationDefining Data Items Conrad Weisert (2003)
Defining Data Items Conrad Weisert (2003) Background -- one more missing component The failed-project documentation I described last month 2 lacked not only output specifications, but, worse, any data
More informationWeek 5: Background. A few observations on learning new programming languages. What's wrong with this (actual) protest from 1966?
Week 5: Background A few observations on learning new programming languages What's wrong with this (actual) protest from 1966? Programmer: "Switching to PL/I as our organization's standard programming
More informationSession 8: UML The Unified Modeling (or the Unstructured Muddling) language?
Session 8: UML The Unified Modeling (or the Unstructured Muddling) language? A few observations, opinions, pros & cons COMP 320 / 420 Spring, 2018 Mr. Weisert Where did the UML come from? Object-oriented
More informationDoes anyone actually do this?
Session 11: Polymorphism Coding type-dependent logic Virtual functions Pure virtual functions and abstract classes Coding type-dependent logic Suppose we need to do something different depending on what
More informationWhat's that? Why? Is one "better" than the other? Terminology. Comparison. Loop testing. Some experts (e.g. Pezze & Young) call it structural testing
Week 9: More details of white-box testing What is it? Comparison with black-box testing What we should not validate Automated versus interactive testing Testing conditional and loop constructs COMP 370
More informationWhy do we have to know all that? The stored program concept (the procedural paradigm) Memory
Session 1b: Background & Preliminaries What is computer programming? The stored-program concept. The procedural paradigm. What is a programming language? The object-oriented paradigm C#: ancestors & origins
More informationSession 1b: Overview of systems analysis methodology
Session 1b: Overview of systems analysis methodology The system specification (ESD) Ways of documenting an ESD Criteria to be satisfied Historical survey Comp 320 / 420, spring, 2018 Alternative names
More informationPart 3. Why do we need both of them? The object-oriented programming paradigm (OOP) Two kinds of object. Important Special Kinds of Member Function
Part 3 The object-oriented programming paradigm (OOP) Two kinds of object Value objects The object contains the member data items Allocated automatically just like primitive (built-in) data items Suitable
More informationEarly programming languages ca. 1960
Session 5: Intro. to Java collections History Collection / container concept Shortcoming of original version Parameterized collections Example: ArrayList Comp 271, Spring, 2012 Mr. Weisert Early programming
More informationDo these criteria apply to work in this course?
Bonus topic fo COMP 170 Program Quality Part 2: Review of Program readability Commentary Choosing data names Code layout Commentary Pitfalls Reading a program A program is not only something to be run
More informationDesign Engineering. Dr. Marouane Kessentini Department of Computer Science
Design Engineering Dr. Marouane Kessentini Department of Computer Science 1 Design Starts mostly from/with requirements (evolving mostly from functionalities and other non functional characteristics) How
More informationWeek 12: Priority queues Heaps and heap operations
Week 12: Priority queues Heaps and heap operations Comp 271 Spring, 2012 Mr. Weisert The queues we studied in week 6 were FIFO Many real-world situations consider other criteria for choosing which object
More informationSession 6b: Specifying constraints
Session 6b: Specifying constraints Analysis vs. Design Constraints on the end product Constraints on the development COMP 320 / 420 Spring, 2018 Mr. Weisert "Analysis & Design" (review from session 1)
More informationTHE OBJECT-ORIENTED DESIGN PROCESS AND DESIGN AXIOMS (CH -9)
THE OBJECT-ORIENTED DESIGN PROCESS AND DESIGN AXIOMS (CH -9) By: Mr.Prachet Bhuyan Assistant Professor, School of Computer Engineering, KIIT Topics to be Discussed 9.1 INTRODUCTION 9.2 THE O-O DESIGN PROCESS
More informationCompilers. Prerequisites
Compilers Prerequisites Data structures & algorithms Linked lists, dictionaries, trees, hash tables Formal languages & automata Regular expressions, finite automata, context-free grammars Machine organization
More informationFormal Methods of Software Design, Eric Hehner, segment 24 page 1 out of 5
Formal Methods of Software Design, Eric Hehner, segment 24 page 1 out of 5 [talking head] This lecture we study theory design and implementation. Programmers have two roles to play here. In one role, they
More informationWeek 2: The Clojure Language. Background Basic structure A few of the most useful facilities. A modernized Lisp. An insider's opinion
Week 2: The Clojure Language Background Basic structure A few of the most useful facilities A modernized Lisp Review of Lisp's origins and development Why did Lisp need to be modernized? Relationship to
More informationSPARK-PL: Introduction
Alexey Solovyev Abstract All basic elements of SPARK-PL are introduced. Table of Contents 1. Introduction to SPARK-PL... 1 2. Alphabet of SPARK-PL... 3 3. Types and variables... 3 4. SPARK-PL basic commands...
More informationAgenda. What could be done about that? Background The original C language (c. 1979) lacked (why?) built-in data types for:
C++ (C# & Java, too) concrete objects and essential application data Conrad Weisert, Information Disciplines, Inc. www.idinews.com For Chicago C++ Users' Group September 27, 2016 cweisert@acm.org Agenda
More informationSupporting Class / C++ Lecture Notes
Goal Supporting Class / C++ Lecture Notes You started with an understanding of how to write Java programs. This course is about explaining the path from Java to executing programs. We proceeded in a mostly
More informationDesign Pattern: Composite
Design Pattern: Composite Intent Compose objects into tree structures to represent part-whole hierarchies. Composite lets clients treat individual objects and compositions of objects uniformly. Motivation
More information21. Document Component Design
Page 1 of 17 1. Plan for Today's Lecture Methods for identifying aggregate components 21. Document Component Design Bob Glushko (glushko@sims.berkeley.edu) Document Engineering (IS 243) - 11 April 2005
More informationObject-Oriented Programming Paradigm
Object-Oriented Programming Paradigm Sample Courseware Object-Oriented Programming Paradigm Object-oriented programming approach allows programmers to write computer programs by representing elements of
More informationThe. dark side of JAVA. Java bien, j'espère? For what?
The dark side of JAVA as a general-purpose object-oriented programming language for major applications. Some concerns about: the language itself the Java community and Java's future APCU October 28 Conrad
More informationDesigning a Database -- Understanding Relational Design
Designing a Database -- Understanding Relational Design Contents Overview The Database Design Process Steps in Designing a Database Common Design Problems Determining the Purpose Determining the Tables
More informationCONTENTS: While loops Class (static) variables and constants Top Down Programming For loops Nested Loops
COMP-202 Unit 4: Programming with Iterations Doing the same thing again and again and again and again and again and again and again and again and again... CONTENTS: While loops Class (static) variables
More information1 State, objects, and abstraction
6.01, Spring Semester, 2008 Course notes for Week 4 1 MASSACHVSETTS INSTITVTE OF TECHNOLOGY Department of Electrical Engineering and Computer Science 6.01 Introduction to EECS I Spring Semester, 2008 Course
More informationOutline. Computer Science 331. Information Hiding. What This Lecture is About. Data Structures, Abstract Data Types, and Their Implementations
Outline Computer Science 331 Data Structures, Abstract Data Types, and Their Implementations Mike Jacobson 1 Overview 2 ADTs as Interfaces Department of Computer Science University of Calgary Lecture #8
More informationA Data Modeling Process. Determining System Requirements. Planning the Project. Specifying Relationships. Specifying Entities
Chapter 3 Entity-Relationship Data Modeling: Process and Examples Fundamentals, Design, and Implementation, 9/e A Data Modeling Process Steps in the data modeling process Plan project Determine requirements
More informationSymbol Tables Symbol Table: In computer science, a symbol table is a data structure used by a language translator such as a compiler or interpreter, where each identifier in a program's source code is
More informationTopic 3 Unified Modeling Language UML. Objective: Student will use UML to represent relationshiops between objects, its structure and dynamics.
Topic 3 Unified Modeling Language UML Objective: Student will use UML to represent relationshiops between objects, its structure and dynamics. Contents: 1. Structure diagrams 2. Behavior diagrams What
More informationCSE 12 Abstract Syntax Trees
CSE 12 Abstract Syntax Trees Compilers and Interpreters Parse Trees and Abstract Syntax Trees (AST's) Creating and Evaluating AST's The Table ADT and Symbol Tables 16 Using Algorithms and Data Structures
More informationUNIT II Requirements Analysis and Specification & Software Design
UNIT II Requirements Analysis and Specification & Software Design Requirements Analysis and Specification Many projects fail: because they start implementing the system: without determining whether they
More informationWeek 7 Prolog overview
Week 7 Prolog overview A language designed for A.I. Logic programming paradigm Programmer specifies relationships among possible data values. User poses queries. What data value(s) will make this predicate
More informationClient Code - the code that uses the classes under discussion. Coupling - code in one module depends on code in another module
Basic Class Design Goal of OOP: Reduce complexity of software development by keeping details, and especially changes to details, from spreading throughout the entire program. Actually, the same goal as
More informationFormal Methods of Software Design, Eric Hehner, segment 1 page 1 out of 5
Formal Methods of Software Design, Eric Hehner, segment 1 page 1 out of 5 [talking head] Formal Methods of Software Engineering means the use of mathematics as an aid to writing programs. Before we can
More informationRelational Algebra. Study Chapter Comp 521 Files and Databases Fall
Relational Algebra Study Chapter 4.1-4.2 Comp 521 Files and Databases Fall 2010 1 Relational Query Languages Query languages: Allow manipulation and retrieval of data from a database. Relational model
More informationG52CPP C++ Programming Lecture 9
G52CPP C++ Programming Lecture 9 Dr Jason Atkin http://www.cs.nott.ac.uk/~jaa/cpp/ g52cpp.html 1 Last lecture const Constants, including pointers The C pre-processor And macros Compiling and linking And
More informationCS107 Handout 37 Spring 2007 May 25, 2007 Introduction to Inheritance
CS107 Handout 37 Spring 2007 May 25, 2007 Introduction to Inheritance Handout written by Julie Zelenski, updated by Jerry. Inheritance is a language property most gracefully supported by the object-oriented
More informationA - 1. CS 494 Object-Oriented Analysis & Design. UML Class Models. Overview. Class Model Perspectives (cont d) Developing Class Models
CS 494 Object-Oriented Analysis & Design UML Class Models Overview How class models are used? Perspectives Classes: attributes and operations Associations Multiplicity Generalization and Inheritance Aggregation
More informationLecture 3. COMP1006/1406 (the Java course) Summer M. Jason Hinek Carleton University
Lecture 3 COMP1006/1406 (the Java course) Summer 2014 M. Jason Hinek Carleton University today s agenda assignments 1 (graded) & 2 3 (available now) & 4 (tomorrow) a quick look back primitive data types
More informationInformation Expert (or Expert)
Page 2 Page 3 Pattern or Principle? Information Expert (or Expert) Class Responsibility Sale Knows Sale total SalesLineItem Knows line item total ProductDescription Knows product price The GRASP patterns
More informationDefining Classes and Methods
Defining Classes and Methods Chapter 5 Modified by James O Reilly Class and Method Definitions OOP- Object Oriented Programming Big Ideas: Group data and related functions (methods) into Objects (Encapsulation)
More informationJISC PALS2 PROJECT: ONIX FOR LICENSING TERMS PHASE 2 (OLT2)
JISC PALS2 PROJECT: ONIX FOR LICENSING TERMS PHASE 2 (OLT2) Functional requirements and design specification for an ONIX-PL license expression drafting system 1. Introduction This document specifies a
More informationIdentify the guidelines for system development. Discuss the purpose of the activities performed in the analysis phase
Discovering Computers 2010 Living in a Digital World Objectives Overview Define system development and list the system development phases Identify the guidelines for system development Discuss the importance
More informationFull file at
Modern Database Management, 10e (Hoffer/Ramesh/Topi) Chapter 2 Modeling Data in the Organization 1) Data modeling may be the most important part of the systems development process because: A) data characteristics
More informationM301: Software Systems & their Development. Unit 4: Inheritance, Composition and Polymorphism
Block 1: Introduction to Java Unit 4: Inheritance, Composition and Polymorphism Aims of the unit: Study and use the Java mechanisms that support reuse, in particular, inheritance and composition; Analyze
More informationOverview of OOP. Dr. Zhang COSC 1436 Summer, /18/2017
Overview of OOP Dr. Zhang COSC 1436 Summer, 2017 7/18/2017 Review Data Structures (list, dictionary, tuples, sets, strings) Lists are enclosed in square brackets: l = [1, 2, "a"] (access by index, is mutable
More informationLecture 09. Ada to Software Engineering. Mr. Mubashir Ali Lecturer (Dept. of Computer Science)
Lecture 09 Ada to Software Engineering Mr. Mubashir Ali Lecturer (Dept. of dr.mubashirali1@gmail.com 1 Summary of Previous Lecture 1. ALGOL 68 2. COBOL 60 3. PL/1 4. BASIC 5. Early Dynamic Languages 6.
More informationGoal: build an object-oriented model of the realworld system (or imaginary world) Slicing the soup: OOA vs. OOD
Domain analysis Goal: build an object-oriented model of the realworld system (or imaginary world) Slicing the soup: OOA vs. OOD OOA concerned with what, not how OOA activities focus on the domain layer
More informationMITOCW watch?v=flgjisf3l78
MITOCW watch?v=flgjisf3l78 The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high-quality educational resources for free. To
More informationIntroducing the UML Eng. Mohammed T. Abo Alroos
Introducing the UML Eng. Mohammed T. Abo Alroos Islamic University of Gaza Introduction to the UML: The UML stands for Unified Modeling Language. It was released in 1997 as a method to diagram software
More informationCS 215 Software Design Sample midterm solutions
Software Design Sample midterm solutions 1. The administration at Happy Valley School District is redesigning the software that manages information about its students. It has identified an abstract class
More informationAppendix A - Glossary(of OO software term s)
Appendix A - Glossary(of OO software term s) Abstract Class A class that does not supply an implementation for its entire interface, and so consequently, cannot be instantiated. ActiveX Microsoft s component
More information1 of 10 5/11/2006 12:10 AM CS 61A Spring 2006 Midterm 3 solutions 1. Box and pointer. > (let ((x (list 1 2 3))) (set-car! (cdr x) (cddr x)) x) (1 (3) 3) +-------------+ V --------- -- ------ ---------
More informationCMP-3440 Database Systems
CMP-3440 Database Systems Database Architecture Lecture 02 zain 1 Database Design Process Application 1 Conceptual requirements Application 1 External Model Application 2 Application 3 Application 4 External
More informationModeling Databases Using UML
Modeling Databases Using UML Fall 2017, Lecture 4 There is nothing worse than a sharp image of a fuzzy concept. Ansel Adams 1 Software to be used in this Chapter Star UML http://www.mysql.com/products/workbench/
More informationCS103 Spring 2018 Mathematical Vocabulary
CS103 Spring 2018 Mathematical Vocabulary You keep using that word. I do not think it means what you think it means. - Inigo Montoya, from The Princess Bride Consider the humble while loop in most programming
More informationRelational Data Model
Relational Data Model 1. Relational data model Information models try to put the real-world information complexity in a framework that can be easily understood. Data models must capture data structure
More informationCasting in C++ (intermediate level)
1 of 5 10/5/2009 1:14 PM Casting in C++ (intermediate level) Casting isn't usually necessary in student-level C++ code, but understanding why it's needed and the restrictions involved can help widen one's
More informationTHE CONCEPT OF OBJECT
THE CONCEPT OF OBJECT An object may be defined as a service center equipped with a visible part (interface) and an hidden part Operation A Operation B Operation C Service center Hidden part Visible part
More informationObject Relationships
Object Relationships Objects can work together in three different types of relationships: Uses: An object can use another to do some work (association). Composition: A complex object may be composed of
More informationIntroduction to Computers and Programming Languages. CS 180 Sunil Prabhakar Department of Computer Science Purdue University
Introduction to Computers and Programming Languages CS 180 Sunil Prabhakar Department of Computer Science Purdue University 1 Objectives This week we will study: The notion of hardware and software Programming
More informationModelling with Classes. CITS1220 Software Engineering
Modelling with Classes CITS1220 Software Engineering Lecture Overview Classes and UML Associations between classes Special types of association: is-a, has-a, is-part-of Modelling Example Implementing associations
More informationCOMP-202 Unit 4: Programming with Iterations
COMP-202 Unit 4: Programming with Iterations Doing the same thing again and again and again and again and again and again and again and again and again... CONTENTS: While loops Class (static) variables
More informationLecturer: Sebastian Coope Ashton Building, Room G.18 COMP 201 web-page:
Lecturer: Sebastian Coope Ashton Building, Room G.18 E-mail: coopes@liverpool.ac.uk COMP 201 web-page: http://www.csc.liv.ac.uk/~coopes/comp201 Lecture 17 Concepts of Object Oriented Design Object-Oriented
More informationENTITY-RELATIONSHIP MODEL
Assigned reading: Chapter 4 ENTITY-RELATIONSHIP MODEL Lecture 1 Relational database model Used by all major commercial database systems Very simple model Query with high-level languages: simple yet expressive
More informationWR2QTP: Semantic Translator of WinRunner Scripts to QTP
WR2QTP: Semantic Translator of WinRunner Scripts to QTP BACKGROUND Automatic testing of Graphical User Interfaces (GUI) is critical, as software is increasingly becoming web-based and operated through
More informationApplying ISO/IEC Quality Model to Quality Requirements Engineering on Critical Software
Applying ISO/IEC 9126-1 Quality Model to Quality Engineering on Critical Motoei AZUMA Department of Industrial and Management Systems Engineering School of Science and Engineering Waseda University azuma@azuma.mgmt.waseda.ac.jp
More informationPrinciples of Software Construction: Objects, Design, and Concurrency
Principles of Software Construction: Objects, Design, and Concurrency A formal design process Josh Bloch Charlie Garrod Darya Melicher 1 Administrivia Homework 2 feedback in your GitHub repository Homework
More informationS/W Programming & Languages
S/W Programming & Languages Overview Programming five steps Five generations High-level programming Object-oriented programming Internet programming 2 Programming What are the five steps of the programdevelopment
More informationadministrivia today UML start design patterns Tuesday, September 28, 2010
administrivia Assignment 2? promise to get past assignment 1 back soon exam on monday review slides are posted your responsibility to review covers through last week today UML start design patterns 1 Unified
More informationRecalling the definition of design as set of models let's consider the modeling of some real software.
Software Design and Architectures SE-2 / SE426 / CS446 / ECE426 Lecture 3 : Modeling Software Software uniquely combines abstract, purely mathematical stuff with physical representation. There are numerous
More informationUnit E Step-by-Step: Programming with Python
Unit E Step-by-Step: Programming with Python Computer Concepts 2016 ENHANCED EDITION 1 Unit Contents Section A: Hello World! Python Style Section B: The Wacky Word Game Section C: Build Your Own Calculator
More informationCC and CEM addenda. Modular PP. March Version 1.0 CCDB
CC and CEM addenda Modular PP March 2014 Version 1.0 CCDB-2014-03-001 Foreword This is addenda to the the Common Criteria version 3 and the associated Common Evaluation Methodology for Information Technology
More informationContents. Managing Places...3. Contents 2
Managing Places Contents 2 Contents Managing Places...3 Creating a Site Structure...3 Managing Spaces...4 Designing Space Hierarchies... 5 Changing the Name of the Root Space...5 Space Creation Options...
More informationObject-Oriented Software Engineering Practical Software Development using UML and Java
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 5: Modelling with Classes Lecture 5 5.1 What is UML? The Unified Modelling Language is a standard graphical
More informationBinary, Hexadecimal and Octal number system
Binary, Hexadecimal and Octal number system Binary, hexadecimal, and octal refer to different number systems. The one that we typically use is called decimal. These number systems refer to the number of
More informationCSC 326H1F, Fall Programming Languages. What languages do you know? Instructor: Ali Juma. A survey of counted loops: FORTRAN
What languages do you know? CSC 326H1F, Programming Languages The usual suspects: C, C++, Java fine languages nearly the same Perhaps you've also learned some others? assembler Basic, Visual Basic, Turing,
More informationEssentials of Database Management (Hoffer et al.) Chapter 2 Modeling Data in the Organization
Essentials of Database Management (Hoffer et al.) Chapter 2 Modeling Data in the Organization 1) The logical representation of an organization's data is called a(n): A) database model. B) entity-relationship
More informationLecture 13: Object orientation. Object oriented programming. Introduction. Object oriented programming. OO and ADT:s. Introduction
Lecture 13: Object orientation Object oriented programming Introduction, types of OO languages Key concepts: Encapsulation, Inheritance, Dynamic binding & polymorphism Other design issues Smalltalk OO
More informationChapter 1 Chapter-1
Chapter 1 Chapter-1 Data: Data are the raw facts that can be obtained after some experiments or observations. Raw data is of no use until and unless we process it to find some useful information form it.
More informationITC213: STRUCTURED PROGRAMMING. Bhaskar Shrestha National College of Computer Studies Tribhuvan University
ITC213: STRUCTURED PROGRAMMING Bhaskar Shrestha National College of Computer Studies Tribhuvan University Lecture 03: Program Development Life Cycle Readings: Not Covered in Textbook Program Development
More informationSystem Analysis and Design. Introduction: Object Oriented Design
System Analysis and Design Introduction: Object Oriented Design Salahaddin University College of Engineering Software Engineering Department 2011-2012 Amanj Sherwany http://www.amanj.me/wiki/doku.php?id=teaching:su:system_analysis_and_design
More informationObject Oriented Paradigm
Object Oriented Paradigm History Simula 67 A Simulation Language 1967 (Algol 60 based) Smalltalk OO Language 1972 (1 st version) 1980 (standard) Background Ideas Record + code OBJECT (attributes + methods)
More informationChapter 11. Categories of languages that support OOP: 1. OOP support is added to an existing language
Categories of languages that support OOP: 1. OOP support is added to an existing language - C++ (also supports procedural and dataoriented programming) - Ada 95 (also supports procedural and dataoriented
More informationThe DBMS accepts requests for data from the application program and instructs the operating system to transfer the appropriate data.
Managing Data Data storage tool must provide the following features: Data definition (data structuring) Data entry (to add new data) Data editing (to change existing data) Querying (a means of extracting
More informationIntroduction to Asymptotic Running Time Analysis CMPSC 122
Introduction to Asymptotic Running Time Analysis CMPSC 122 I. Comparing Two Searching Algorithms Let's begin by considering two searching algorithms you know, both of which will have input parameters of
More informationUNIVERSITY OF CALIFORNIA Department of Electrical Engineering and Computer Sciences Computer Science Division DO NOT. P. N.
CS 164 Fall 2011 UNIVERSITY OF CALIFORNIA Department of Electrical Engineering and Computer Sciences Computer Science Division CS 164: P. N. Hilfinger 1. [2 points] We d like to add inheritance to our
More informationUnit 6 - Software Design and Development LESSON 8 QUALITY ASSURANCE
Unit 6 - Software Design and Development LESSON 8 QUALITY ASSURANCE Previously Key features of programming languages Software Development Lifecycle Design models Some software structures functions, procedures,
More informationThe Next Step: Designing DB Schema. Chapter 6: Entity-Relationship Model. The E-R Model. Identifying Entities and their Attributes.
Chapter 6: Entity-Relationship Model Our Story So Far: Relational Tables Databases are structured collections of organized data The Relational model is the most common data organization model The Relational
More informationLet denote the number of partitions of with at most parts each less than or equal to. By comparing the definitions of and it is clear that ( ) ( )
Calculating exact values of without using recurrence relations This note describes an algorithm for calculating exact values of, the number of partitions of into distinct positive integers each less than
More information