Logical Architecture UML Package Diagrams Ch 13 Lets

  • Slides: 18
Download presentation
Logical Architecture & UML Package Diagrams Ch. 13

Logical Architecture & UML Package Diagrams Ch. 13

Let’s take a step back • Why is it so difficult to build good

Let’s take a step back • Why is it so difficult to build good software? • https: //www. wired. com/2005/11/historys-worst-softwarebugs/? current. Page=all

The “ 60’s Software crisis” • • Moved from HW to SW demand Product

The “ 60’s Software crisis” • • Moved from HW to SW demand Product complexity growth Demand of SW in NASA & Boeing increased exponentially Development effort • • • Class exercise Small project Term project Word processor Operating system • Developers productivity growth - gap between that and the software complexity needed • Davis 1990 - 5/7 million spent were wasted (not used or not delivered software) • Nato 1969 conference on software development

Software Process • Break down complexity in a systematic way • Break it down

Software Process • Break down complexity in a systematic way • Break it down in a formal way • Processes: • • Waterfall - the way the water falls Evolutionary prototyping Rational Unified Process Agile - sacrifice discipline to accommodate changes, more usually changes in requirements

Software Phases • Requirements engineering • Design - high level structure of sw •

Software Phases • Requirements engineering • Design - high level structure of sw • Implementation - code • Verification and validation • Maintenance - bugs, new functionality

Software Tools Progression • Development: Punch cards to IDES • Language: Assembly to high

Software Tools Progression • Development: Punch cards to IDES • Language: Assembly to high level • Debugging: Print lines to symbolic debuggers • Git • Coverage and verification tools

The UP Disciplines In an iteration you walk through all disciplines. Phases Process Disciplines

The UP Disciplines In an iteration you walk through all disciplines. Phases Process Disciplines Inception Elaboration Construction Transition Business Modeling Requirements Analysis & Design Implementation Test Deployment Supporting Disciplines Configuration Mgmt Management Environment Preliminary Iteration(s) Iter. #1 Iter. #2 Iter. #n+1 Iterations Iter. #n+2 Iter. #m+1 7

The UP Disciplines Phases Process Disciplines Inception Elaboration Focus of this course. Construction Transition

The UP Disciplines Phases Process Disciplines Inception Elaboration Focus of this course. Construction Transition Business Modeling Requirements Analysis & Design Implementation Test Deployment Supporting Disciplines Configuration Mgmt Management Environment Preliminary Iteration(s) Iter. #1 Iter. #2 Iter. #n+1 Iterations Iter. #n+2 Iter. #m+1 8

What is this architecture thing again? • Software Architecture deals with the large scale

What is this architecture thing again? • Software Architecture deals with the large scale system • Software architecture includes • organization and major structure of the major elements of the system • system and subsystem behavior • collaborations

UML Package Diagrams & Layers

UML Package Diagrams & Layers

Guideline: Design with Layers

Guideline: Design with Layers

Common Layers in Information Systems

Common Layers in Information Systems

Domain Layer and Domain Model Relationship

Domain Layer and Domain Model Relationship

Layers & Partitions

Layers & Partitions

Mixing Views in the Architecture

Mixing Views in the Architecture

Model-View Separation Principle

Model-View Separation Principle

References • Packages in java and how to use them: https: //beginnersbook. com/2013/03/packages-in-java/ •

References • Packages in java and how to use them: https: //beginnersbook. com/2013/03/packages-in-java/ • Chapter 30 – Designing the Logical Architecture Patterns https: //csis. pace. edu/~marchese/CS 616/Lec 11/se_l 11. htm