Data Model driven applications using CASE Data Models as the nucleus of software development in a Computer Aided Software Engineering environment.

Slides:



Advertisements
Similar presentations
Practical Database Design Methodology and Use of UML Diagrams
Advertisements

DIGIDOC A web based tool to Manage Documents. System Overview DigiDoc is a web-based customizable, integrated solution for Business Process Management.
Chapter 10: Designing Databases
CIS 376 Bruce R. Maxim UM-Dearborn
C6 Databases.
Database Systems: Design, Implementation, and Management Tenth Edition
Ch 3 System Development Environment
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
Introduction to Databases
© 2005 by Prentice Hall Appendix 2 Automated Tools for Systems Development Modern Systems Analysis and Design Fourth Edition Jeffrey A. Hoffer Joey F.
Managing Data Resources
Copyright 2002 Prentice-Hall, Inc. Chapter 4 Automated Tools for Systems Development 4.1 Modern Systems Analysis and Design Third Edition.
Chapter 2 Data Models Database Systems: Design, Implementation, and Management, Seventh Edition, Rob and Coronel.
Oct 31, 2000Database Management -- Fall R. Larson Database Management: Introduction to Terms and Concepts University of California, Berkeley School.
1 Basic DB Terms Data: Meaningful facts, text, graphics, images, sound, video segments –A collection of individual responses from a marketing research.
File Systems and Databases
SLIDE 1IS Fall 2010 Information Systems Planning and the Database Design Process Ray R. Larson University of California, Berkeley School.
Object-Oriented Databases
Model Driven Architecture (MDA) Partha Kuchana. Agenda What is MDA Modeling Approaches MDA in a NutShell MDA Models SDLC MDA Models (an Example) MDA -
“DOK 322 DBMS” Y.T. Database Design Hacettepe University Department of Information Management DOK 322: Database Management Systems.
Configuration Management
RIZWAN REHMAN, CCS, DU. Advantages of ORDBMSs  The main advantages of extending the relational data model come from reuse and sharing.  Reuse comes.
Structured Vs. Object Oriented Analysis and Design SAD Vs. OOAD
Chapter 14 & 15 Conceptual & Logical Database Design Methodology
6 Systems Analysis and Design in a Changing World, Fourth Edition.
Software Reengineering 2003 년 12 월 2 일 최창익, 고광 원.
Chapter 6: The Traditional Approach to Requirements
Database System Development Lifecycle © Pearson Education Limited 1995, 2005.
Overview of the Database Development Process
Appendix 2 Automated Tools for Systems Development © 2006 ITT Educational Services Inc. SE350 System Analysis for Software Engineers: Unit 2 Slide 1.
Systems Analysis – Analyzing Requirements.  Analyzing requirement stage identifies user information needs and new systems requirements  IS dev team.
Week 1 Lecture MSCD 600 Database Architecture Samuel ConnSamuel Conn, Asst. Professor Suggestions for using the Lecture Slides.
INFORMATION SYSTEM APPLICATIONS System Development Life Cycle.
ITEC224 Database Programming
2 1 Chapter 2 Data Models Database Systems: Design, Implementation, and Management, Seventh Edition, Rob and Coronel.
Database Technical Session By: Prof. Adarsh Patel.
Database Design - Lecture 2
CS 425/625 Software Engineering Legacy Systems
Database Systems: Design, Implementation, and Management Ninth Edition
Architecture for a Database System
Identify steps for understanding and solving the
HSCI 709 SQL Data Definition Language. SQL Standard SQL-92 was developed by the INCITS Technical Committee H2 on Databases. SQL-92 was designed to be.
1 Systems Analysis and Design in a Changing World, Thursday, January 18, 2007.
C6 Databases. 2 Traditional file environment Data Redundancy and Inconsistency: –Data redundancy: The presence of duplicate data in multiple data files.
1 Introduction to Software Engineering Lecture 1.
Information Systems Engineering. Lecture Outline Information Systems Architecture Information System Architecture components Information Engineering Phases.
IS 325 Notes for Wednesday August 28, Data is the Core of the Enterprise.
MANAGING DATA RESOURCES ~ pertemuan 7 ~ Oleh: Ir. Abdul Hayat, MTI.
CASE (Computer-Aided Software Engineering) Tools Software that is used to support software process activities. Provides software process support by:- –
Copyright 2002 Prentice-Hall, Inc. Chapter 4 Automated Tools for Systems Development 4.1 Modern Systems Analysis and Design.
Chapter 4 Automated Tools for Systems Development Modern Systems Analysis and Design Third Edition 4.1.
CS523 Database Design Instructor : Somchai Thangsathityangkul You can download lecture note at Class Presence 10% Quiz 10%
1 10 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Chapter 10 Designing Databases.
Data Models. 2 The Importance of Data Models Data models –Relatively simple representations, usually graphical, of complex real-world data structures.
SQL Basics Review Reviewing what we’ve learned so far…….
Managing Data Resources File Organization and databases for business information systems.
Appendix 2 Automated Tools for Systems Development
Modern Systems Analysis and Design Third Edition
Modern Systems Analysis and Design Third Edition
Software Maintenance.
Business System Development
MANAGING DATA RESOURCES
Modern Systems Analysis and Design Third Edition
Modern Systems Analysis and Design Third Edition
Data Model.
ITEC 3220A Using and Designing Database Systems
Database Design Hacettepe University
Database Management Systems
Modern Systems Analysis and Design Third Edition
Presentation transcript:

Data Model driven applications using CASE Data Models as the nucleus of software development in a Computer Aided Software Engineering environment

Why do this presentation? Attended DAMA Orlando and discovered that: –Nothing much has changed in years!!! –COBOL replaced by Visual GUI development tools –Hierarchical DBs replaced by RDBMS –Paper/ documentation continues to be the main means of communication for software development –Little automation of software development functions –Information Engineering (IE) is a dirty word Most significant improvements: –Data and Process Modeling introduced in the 80’s –ERD and DFD enable document creation and Data Definition Language (DDL) generation –Context Sensitive Editors and Wizards

Data Model as the catalyst for software development in a traditional environment Is the primary working document where business objects and rules are documented Evolves into a “common” language between IS people and the business area owners (users) Provides the basis for the physical design of the RDBMS BUT… Once construction starts it’s seldom used for software development Becomes a fixture in the “project documentation” shelf May be added to a meta-data repository for research Becomes obsolete with new releases (lack of updates) Seldom used by developers after release 1.0 (low awareness)

Data Model as the nucleus for software development in a CASE environment Is also the Catalyst BUT… It becomes the nucleus of the application Without it, there cannot be any processes Without processes, there cannot be an application Developers are DATA MODEL AWARE Never becomes obsolete It is always maintained up to date

CASE and the Encyclopedia. Diagrams use objects from the encyclopedia Application is modeled entirely as diagrams Code is generated from the diagrams Encyclopedia (Metadata) Data ModelProcess Action Diagrams Object Matrices Procedure Action Diagrams Common Action Diagrams Procedure Flow Diagrams Window Design Screen DesignData Structure Design Business System Definition Process Hierarchy Target Environment Application Packaging

Data Model Diagram

Entity Type Properties Processing considerations are captured in the ERD Extensions provided for Component Based Modeling

Process Decomposition Functions and Processes Process Normalization Provides the initial tie between a process and an entity

Action Diagrams Ties the business process with data model elements Implement business policy Specifies ENTITY ACTIONS--CRUD and ADT ( (associate, disassociate, and transfer)

Data Modeling in a CASE environment Requires a different approach than Entity-Relationship tool modeling –Includes physical constraints Denormalization, entity merging, reference entities –Captures implementation properties Volume, TD names, encapsulation, % relationship participation Requires a practical approach –Not as expressive as a pure conceptual model –Implementation constraints introduced –Simplifies the specific vs. generic choice Implementation decisions must be made early in order to: –Save processes, objects, and space –Enhance performance (reduce table joints)

Logical to Physical transformation Straight forward process in a CASE environment Provides the code generator with a physical world view of the data Changes can be re-generated as needed Physical considerations captured in the data model are put to work as a “technical design” for the targeted RDBMS and code generator –Tables –Columns –Indices –Database specific variables specified –Referential Integrity rules (by DBMS or by CASE)

Impact analysis for change management Encyclopedia query tools assess instantly the impact a change to the data model would cause to processes and procedures

Denormalization case

Initial implementation made late in ‘95 Additional READ actions needed to get Provider, Diagnosis, and Modifier data for each charge created performance problems. Solution de-normalized 11 attributes into Charge. Referential Integrity not a problem. All 3 entities never get deleted. “Views” of the new Charge attributes replaced the views of the three associative entities in the affected diagrams Done in ’99 as part of normal release activities. Simplified the diagrams affected.

Traditional Applications Traditional Applications. What are they? –Any application coded in native language (3GL/4GL) –Any application coded to perform in a specific platform –Business rules and knowledge are “embedded” in the application –Non portable and costly to modify and maintain Software development is viewed as an expense. Applications deployed using “old” and “new” languages. New applications become “legacy” when they hit production Inherit the same challenges faced by “old legacy” apps. OO languages have steeper learning curves for IT staff. Trend is to do it “cheaper” and “faster”

Model Driven Development By definition, is not “traditional” because models: –Are not hard coded –Are portable –Can be deployed to multiple platforms –Can be shared and reused –Are technology independent –Are an INVESTMENT because they: Capture data and business rules Capture the processes that deploy the business rules Capture the interfaces that implement the processes Are abstract and language independent Can be modified/redeployed across multiple languages and platforms with minimal labor expense Trend is to do it “efficiently” and “defect free”

Closing Points Information Engineering (IE) provides a “data centric” approach to software development CASE provides the tool environment for IE to become feasible Data and process integration is a result of IE in a CASE environment Models are an investment Models are re-deployable across target languages and RDBMS’s IE and CASE makes the software life cycle sustainable because DATA and PROCESSES are integrated IT staff learns how to build models in IE IT staff does not learn to build code in a variety of languages