Logical Architecture UML Package Diagrams Ch 13 Lets


















- Slides: 18

Logical Architecture & UML Package Diagrams Ch. 13

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 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 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 • Implementation - code • Verification and validation • Maintenance - bugs, new functionality

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 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 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 system • Software architecture includes • organization and major structure of the major elements of the system • system and subsystem behavior • collaborations


UML Package Diagrams & Layers

Guideline: Design with Layers

Common Layers in Information Systems

Domain Layer and Domain Model Relationship

Layers & Partitions

Mixing Views in the Architecture

Model-View Separation Principle

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