CIS 764 Database Systems Engineering

Slides:



Advertisements
Similar presentations
Relational Database. Relational database: a set of relations Relation: made up of 2 parts: − Schema : specifies the name of relations, plus name and type.
Advertisements

Database Systems: Design, Implementation, and Management Tenth Edition
The Entity-Relationship Model Jianlin Feng School of Software SUN YAT-SEN UNIVERSITY courtesy of Joe Hellerstein for some slides.
SOEN 343 Software Design Section H Fall 2006 Dr Greg Butler
Fall CIS 764 Database Systems Engineering L13: Status: grading, assignments, tutorials, presentations projects.
Building Enterprise Applications Using Visual Studio ®.NET Enterprise Architect.
Data modeling using the entity-relationship model Sept. 2012Yangjun Chen ACS Outline: Data modeling using ER-model (Chapter 3 - 3rd, 4th, 5th ed.)
Chapter 6 Methodology Conceptual Databases Design Transparencies © Pearson Education Limited 1995, 2005.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 7 Data Modeling Using the Entity- Relationship (ER) Model.
Informatiesystemen in de Bouw 7M711 Joran Jessurun en Jos van Leeuwen Week 3.
Lecture Fourteen Methodology - Conceptual Database Design
Copyright W. Howden1 Lecture 2: Elaboration Tasks and Domain Modeling.
DATABASE DEVELOPMENT STRATEGIES TOP DOWNTOP DOWN –Large scale application driven by strategic objectives –General  Specific –Organization-wide (“data.
Methodology Conceptual Database Design
Modeling & Designing the Database
Object Oriented Analysis and Design Using the UML
Chapter 14 & 15 Conceptual & Logical Database Design Methodology
CSE314 Database Systems Data Modeling Using the Entity- Relationship (ER) Model Doç. Dr. Mehmet Göktürk src: Elmasri & Navanthe 6E Pearson Ed Slide Set.
Fall CIS 764 Database Systems Engineering L3: Two Assignments Relating to J2EE.
Modelling information systems
Faculty of Informatics and Information Technologies Slovak University of Technology Peter Kajsa and Ľubomír Majtás Design.
A Development Process Lecture Oo13 Objectory based method.
Fall CIS 764 Database Systems Engineering L21: Status Project Reviews Testing.
Methodology - Conceptual Database Design Transparencies
Software School of Hunan University Database Systems Design Part III Section 5 Design Methodology.
Methodology Conceptual Databases Design
9/14/2012ISC329 Isabelle Bichindaritz1 Database System Life Cycle.
CSCI 3140 Module 2 – Conceptual Database Design Theodore Chiasson Dalhousie University.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 7 Data Modeling Using the Entity- Relationship (ER) Model.
1 Chapter 15 Methodology Conceptual Databases Design Transparencies Last Updated: April 2011 By M. Arief
Methodology - Conceptual Database Design. 2 Design Methodology u Structured approach that uses procedures, techniques, tools, and documentation aids to.
1/26/2004TCSS545A Isabelle Bichindaritz1 Database Management Systems Design Methodology.
Methodology: Conceptual Databases Design
Team Dosen UMN Database Design Connolly Book Chapter
Fall CIS 764 Database Systems Engineering L13: Status: grading, assignments, tutorials, presentations projects
Conceptual Modelling – Behaviour
Chapters 15 &16 Conceptual and Logical Database Design Methodology.
Methodology - Conceptual Database Design
Copyright © 2013 Curt Hill UML Unified Modeling Language.
CS 3630 Database Design and Implementation. Assignment 1 2 What is 3630?
Technical Overview The Fastest Way to Create Architecture!
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 7 Data Modeling Using the Entity- Relationship (ER) Model.
INFO275 Database Management Term Project. Overview Your project will be to define, design and build a functioning database, to support an application.
Connecting with Computer Science2 Objectives Learn how software engineering is used to create applications Learn some of the different software engineering.
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 7 Data Modeling Using the Entity- Relationship (ER) Model.
1 Week 6 Software Engineering Fall Term 2015 Marymount University School of Business Administration Professor Suydam.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 14 Slide 1 Object-Oriented Design.
Data Modeling Using the Entity- Relationship (ER) Model
Building Enterprise Applications Using Visual Studio®
CS4222 Principles of Database System
Data Modeling Using the ERD
Methodology Conceptual Databases Design
Entity- Relationship (ER) Model
Methodology Logical Database Design for the Relational Model
Object Management Group Information Management Metamodel
Chapter 6 The Traditional Approach to Requirements.
School of Business Administration
Methodology Conceptual Database Design
CIS 764 Database Systems Engineering
Web Application Modeling
Conceptual data modeling
Information Systems CS-507 Lecture 25
Chapter 4 Entity Relationship (ER) Modeling
Introduction to UML.
These are slides from Dr. Phil Cannata’s Class
OOA&D II Bo Wang, Kan Qi Adapted from Alexey Tregubov’s Slides.
Introduction to DBMS Purpose of Database Systems View of Data
Methodology Conceptual Databases Design
DBMS ER-Relational Mapping
Presentation transcript:

CIS 764 Database Systems Engineering L4: Design process and artifacts (and reverse engineering) <no audio yet … to be added early in Sept. > Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering  No new homework assignment today. Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering technology …. J2EE, dotNet, Ruby, … JDev, Eclipse, VisStudio, .. methodology … RUP (Rational Unified Process), MDD / MDA (model driven development / architecture) extreme programming / developent management … install tools, backups, product selection, training, process / people management, security policies, schedules, budget, … Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering Note: Traditional DB design - -> data models: > ER diagrams (P. Chen) ………………………….conceptual , not OO > schema diagrams (Access, Visio, other tools) ... tables, not OO > UML (an emerging notation for data models) … UML, not OO !! read: www.agiledata.org/essays/umlDataModelingProfile.html Scott Ambler’s own profile for UML database models. Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering … notes: stereotype is “data model” storage map is “relational database” kinds of classes: entity lookup table index stored procedure association table view kinds of associations: “arrow” aggregation composition column tags: PK, FK, … Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering conceptual model … most abstract, language/platform independent (never a table model ) logical model …….. specific parameters, constraints physical model …. tables, concrete types Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering OO design process: … in practice, always iterative use case model (requirements) … what operations Process model (“swim lanes”) … coordination of ops GUI design: page designs, page flow, mock-up prototype, state models domain model use case assertions, class model Semantic constraints: invariants, operation assertions, state models physical data model (and OO to relational mapping) Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering UML tutorials: OMG (Object Modeling Group) http://www.uml.org/ Rational / Borland (old, but simple) http://dn.codegear.com/article/31863 Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering Sample documents from Sundeep MSE: A User Community (based on Orkut.com)  not a perfect example … several weak features. Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering Manage Friends * Purpose: The purpose of this part of the application is to enable user to manage his friends list. *Input: The user will select his friends section and choose to manage friends with various options given. *Processing: The user selection will be validated and accordingly the action is being performed again the user’s account at the server. Friends list is then being processed at the server. *Output: The required action is being performed based on the selection of the action, between Add friend, Delete friend, Scrap friend. Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering Process model: <did not have one !!!> That means any user can do any (legal) operation in any order. whereas, typical enterprise has coordination of operations: e.g. I cannot access KATS until I am appointed as faculty. Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering --Invariants-- Every photo in database should be associated to a single user. Owner is a member of the community. --Every photo in database should be associated to a single user. association photoasso between Photo[0..*] role userphoto SocialUser[1] role user end --Owner is a member of the community. context SocialUser inv CommOwnerIsMember: SocialUser.allinstances -> forAll(S | S.myCommunities.Owns->includes(S) implies S.myCommunities.member->includes(S)) Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering CreateCommunity(c_name : String, c_pic : String) : Boolean pre : Community.allInstances.c_name->excludes(c_name) post : Community.allInstances.c_name=Community.allInstances.c_name@pre->including(c_name) post : Community.allInstances.c_pic=Community.allInstances.c_pic@pre->including(c_pic) DeleteCommunity(c_id : Integer) pre : Community.allInstances.c_id->includes(c_id) post : Community.allInstances.c_id=Community.allInstances.c_id@pre->excluding(c_id) post : Community.allInstances.c_name=Community.allInstances.c_name@pre->excludes(c_name) post : Community.allInstances.c_pic=Community.allInstances.c_pic@pre->excludes(c_pic) Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering Test Plan: derived from method assertions include plan for function and regression testing function: test both positive action and invalid inputs & states regression: JUnit , NUnit … repeat tests as system is changed Registering a Social User Login Adding a Friend Deleting a Friend Scrap a Friend Creating a Community Joining a Community Manage photos of user Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering Now the reverse engineering process: Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering Fall 2007 http://www.cis.ksu.edu

CIS 764 Database Systems Engineering End Fall 2007 http://www.cis.ksu.edu