360 likes | 477 Views
Software Development Environments & CASE. “The cobbler finally gets some shoes”. SDE & CASE are an information system that helps people develop information systems Roots: 1960s & 1970s Workstation, graphical versions around 1984 GOAL: Automate the entire systems development life cycle
E N D
Software Development Environments & CASE “The cobbler finally gets some shoes”
SDE & CASE are an information system that helps people develop information systems Roots: 1960s & 1970s Workstation, graphical versions around 1984 GOAL: Automate the entire systems development life cycle SDE & CASE include an integrated (plug-n-play) set of software tools, techniques, and methodologies SDE & CASE
SDE & CASE Diagramming Tools Code Generation Error Checking Repository Prototyping Import & Export Reengineering Tools Adapted from Yourdon, E., Deline and Fall of the American Programmer, Prentice-Hall, Englewood Cliffs, NJ 1992, p. 137
SDE/CASE LOWER CASE (BACK-END) UPPER CASE (FRONT-END) PLANNING ANALYSIS DESIGN IMPLEMENTATION EVOLUTION CASE Tools Below This Line • Structured English, etc... • Screen/Report Design • Prototyping • Database Population • Testing • Etc... • Reverse Engineering • Design Recovery • Etc... • Enterprise • Strategic • Planning • Information • Systems • Strategic • Planning • Etc... • Code Generators • Application Generators • Etc... • Data Modeling • Process Modeling • Object Modeling • Repository Support • Validation & Verification • Etc... Also: Bridges between different vendor’s CASE products. Project Management Tools Across All
SDE & CASE - Objectives #1 • Improve productivity of developers • Improve software quality (zero defects) • Speed up the systems development process • Reduce the cost of systems development • Automate design recovery and reverse engineering of systems • Automate systems documentation
SDE & CASE - Objectives #2 • Automate programming code generation • Automate validation and verification (error checking) • Automate project management tasks • Promote improved control over the development process • Integrate systems development steps and tools • Promote software reusability and portability
Disenchantment Resignation Commitment Implementation Maturity STAGES OF SDE/CASE USAGE
SDE & CASE - Issues #1 • True model to model integration (analysis & design) • Stronger coupling between design models and code generation • Stronger client (workstation) to server (host computer) integration for repository population and maintenance for systems development workgroups • Stronger connection between SDE/CASE and other technologies such as DBMS and 4GLs
SDE & CASE - Issues #2 • Improved automated support for existing and future systems development methodologies • Solidification of standards • Improved maintenance & reverse engineering support • Improved project management support • Improved awareness of organizational change issues for introducing SDE/CASE • Stronger commitment from management
Emphasis on coding, test Paper models Manual coding Manual documentation Testing of code Maintaining code Emphasis on Analysis & Design Rapid prototyping Automated code generation Automatic documentation Testing of specs & design Maintaining specs & design SDE & CASE - Culture Pre-SDE/CASEPost-SDE/CASE Based on McClure, C., CASE Is Software Automation, Prentice-Hall, Englewood Cliffs, NJ 1989
The remaining pages show a Guided Tour of Oracle’s Designer/2000 CASE Product
Entity-Relationship Model version 2 The ‘bars’ which now appear on the crows feet adjacent to the transcript entity signal the fact that the Transcript entity derives some of its key values from its relationships with Student and Class.
Transition Journal - a portion of the posting preferences to database... created table-entity 'CLASSES:CLASS' posting multi line text for table 'CLASSES' to the repository created table 'CLASSES' to implement entity 'CLASS' created table-entity 'FACULTY:FACULTY' posting multi line text for table 'FACULTY' to the repository created table 'FACULTY' to implement entity 'FACULTY' created table-entity 'STUDENTS:STUDENT' posting multi line text for table 'STUDENTS' to the repository created table 'STUDENTS' to implement entity 'STUDENT' created table-entity 'TRANSCRIPT:TRANSCRIPT' posting multi line text for table 'TRANSCRIPT' to the repository created table 'TRANSCRIPT' to implement entity 'TRANSCRIPT' posting changes to database... committing changes... committed successfully created primary key 'CLASSES.CLASS_PK' for table 'CLASSES' created primary key 'FACULTY.FAC_PK' for table 'FACULTY' created primary key 'STUDENTS.STUD_PK' for table 'STUDENTS' created primary key 'TRANSCRIPT.TRAN_PK' for table 'TRANSCRIPT' posting changes to database... committing changes... committed successfully posting multi line text for foreign key 'CLASSES.CLASS_FAC_FK' to the repository created foreign key 'CLASSES.CLASS_FAC_FK' from table 'CLASSES' to table 'FACULTY' posting multi line text for foreign key 'TRANSCRIPT.TRAN_STUD_FK' to the repository created foreign key 'TRANSCRIPT.TRAN_STUD_FK' from table 'TRANSCRIPT' to table 'STUDENTS' posting multi line text for foreign key 'TRANSCRIPT.TRAN_CLASS_FK' to the repository created foreign key 'TRANSCRIPT.TRAN_CLASS_FK' from table 'TRANSCRIPT' to table 'CLASSES' committing changes... committed successfully etc…..
REM REM This ORACLE7 command file was generated by Oracle Server Generator REM Version 5.5.10.0.0 on 09-MAY-97 REM REM For application CAMPUS version 1 database CAMPUS REM SET SCAN OFF SPOOL CAMPUS.lst REM TABLE CREATION start CAMPUS.tab REM CONSTRAINT CREATION start CAMPUS.con REM INDEX CREATION start CAMPUS.ind REM REM End of command file REM SPOOL OFF REM REM This ORACLE7 command file was generated by Oracle Server Generator REM Version 5.5.10.0.0 on 09-MAY-97 REM REM For application CAMPUS version 1 database CAMPUS REM REM TABLE REM CLASSES REM FACULTY REM STUDENTS REM TRANSCRIPT REM PROMPT PROMPT Creating Table CLASSES CREATE TABLE classes( id INTEGER NOT NULL, fac_id INTEGER NOT NULL, dept_abbrev VARCHAR2(5) NOT NULL, dept_number INTEGER NOT NULL, title VARCHAR2(80) NOT NULL ) ; DDL Listing - partial
Transition Journal - a portion of the Application Design Wizard Page:1 Log file Create Candidate Modules from Function definitions, Entity and Attribute usages, Dataflow definitions and Business Unit Associations. Log file created for Application: CAMPUS Version : 1 With User Preferences of..... Top function : MAIN Commonality of business views : 1 Application Design Wizard Page:2 Log file ShortName:CAMPUS0010 Name :ADMINISTRATION()()[1] Type : SCREEN Notes :Developed by Application Design Wizard from function ADM-S candidate module because it is an elementary function ShortName:CAMPUS0020 Name :ADMINISTRATION()()[2] Type : SCREEN