USDA/ARS. Conservation Planning Support System Software Architecture Document. Version <1.1>

Size: px
Start display at page:

Download "USDA/ARS. Conservation Planning Support System Software Architecture Document. Version <1.1>"

Transcription

1 USDA/ARS Conservation Planning Support System Software Architecture Document Version <1.1>

2 Revision History Date Version Description <05/15/2003> <1.0> First Draft of the Software Architecture Doc. <12/04/2003> <1.1> This revised version contains a more complete portion for each of the design states. USDA/ARS, 2014 Page 2 of 11

3 Table of Contents 1. Introduction Purpose Scope Definitions, Acronyms, and Abbreviations References Overview 5 2. Architectural Goals and Constraints 5 3. Architectural Representation Architectural Views Architectural Design Patterns Architectural Style 3.4 Architectural Process Architectural View Decomposition Use-Case View Use-Case Realizations 9 Formulate Alternatives 9 Evaluate Alternatives 9 Make Decision Design View Overview Process View Component View Overview Deployment View Size and Performance Quality Bibliography 11 USDA/ARS, 2014 Page 3 of 11

4 CPSS Software Architecture Document 1. Introduction This introduction provides an overview of the entire Software Architecture Document for the Conservation Planning Support System. It includes the purpose, scope, definitions, acronyms, abbreviations, references, and overview of the system. 1.1 Purpose This document provides an architectural overview of the Conservation Planning Support System (CPSS). The primary purpose of the Conservation Planning Support System (CPSS) is to satisfy the agricultural needs of producers and soil conservationists. This document is intended to capture and convey the significant architectural decisions which have been made in designing and building the system. It is a way by which the systems architect and others involved in the project can better understand the problems to be solved and how it will be represented with this system. The following diagram shows the different steps that will be taken to set and get information from the MARIA database effort: 1.2 Scope The scope of this document is the implementation of the CPSS which consist of steps 1 through 9 of the NRCS National Planning Process. USDA/ARS, 2014 Page 4 of 11

5 1.3 Definitions, Acronyms, and Abbreviations See the System Glossary. 1.4 References As explained below, the top-level composition of the Conservation Planning Support System, such as the use case models, uses the concepts described in the books: Advanced Use Case Modeling; Frank Armour and Granville Miller. The reference book used to model all the architectural diagrams was: The Unified Modeling Language Reference Manual; James Rumbaugh, Ivar Jacobson, and Grady Booch. Some concepts regarding the documentation of software architecture were obtained from the book: Documenting Software Architecture-Views and Beyond; Paul Clemens, Felix Bachmann, Len Bass, David Garlan, James Iveers, Reed Little, Robert Nord, and Judith Stafford. 1.5 Overview This document consists of 7 sections, which are described below: Section 1 is simply an introduction to the software architecture of the CPSS. Section 2 addresses the goals and constraints of the system s architecture Section 3 describes the architectural representation of the system. Section 4 describes the five views in which the system documentation is divided by following the Rational Unified Process (RUP). A visual representation of these five views can be seen in the Software System Development Diagram. Section 5 of this document talks about other system considerations such as size and performance of the system. Section 6 describes some system quality issues. Section 7 is a bibliography of the references used to create this document. 2. Architectural Goals and Constraints The CPSS architecture has been designed with the following objectives in mind: 1. To facilitate the decision making process for producers by incorporating information on sustainability, offsite effects, and profitability. 2. To help soil conservationists explain how management changes affect the natural system s production, sustainability, and water quality effects. 3. To allow producers to enhance their agricultural planning by giving them a logical decision based on available science. 4. To allow producers to become more profitable from their crops since a better plan will have been implemented. The major design and implementation constraints for the system are: 1. Simplicity 2. Flexibility A full list of the system requirements can be seen in the High Level Requirements document. 3. Architectural Representation 3.1 Architectural Views Modeling, implementing, and documenting a system requires that the system be viewed from different perspectives. Because of this, the architecture of the CPSS will be represented in a five view approach: Use Case View, Design View, Process View, Component View, and Deployment View. The following is a brief description for each of the views: USDA/ARS, 2014 Page 5 of 11

6 Design View Component View Conservation Planning Support System Use Case Version: <1.1> View Process View Deployment View Use Case View: the main purpose of the use case view is to define main drivers of the system, which are the system requirements. Design View: this view contains any system definitions as well as class and object diagrams which depict the services that the system will provide to its end-users. Process View: this view will display the processes that form the systems mechanism. These will be represented as collaboration, sequence, and activity diagrams. Component View: this view will include system and user interface specifications, meaning, the different components that make up the system. Deployment View: this view will depict how the different systems hardware nodes will come to life together as well as how each of the hardware nodes will be installed and deployed. As seen in the above diagram, requirements, or the use case view, are the main driving force to this and any software architecture system. A more detailed map to these five models can be found in the Software System Development Diagram. 3.2 Architectural Design Patterns The design pattern used to create the CPSS is the MVC (Model View Controller) design pattern. The MVC design patter clearly separated the web application s behavior, presentation and control. The modularity of this design pattern allows for easier code reuse, more centralized control, bugs easier to track down and code easier to modify. The presentation, or view, of the CPSS has been implemented keeping in mind the Model 2 usage pattern, which makes use of servlets as front controllers and maps incoming request to specific operation and selects views based on the model and session state. In some steps of the application the Model 1 pattern, in which a servlets is not used as the front controller, is also used. Some of the sections of the CPSS where Model 1 architecture is used are the DB Input For and the CPPE tool. These tools are very simple as far as navigation and a front controller is not needed since the controller is implied through the higher level container (the CPSS). 3.3 Architectural Style As with any other things, a style may be used to satisfy any functional, non-functional or aesthetic needs in a software system. The CPSS, in particular, follows the three-tier architectural style: presentation tier, business tier, and data tier. The following is a simple description of what will be included in each of the tiers: USDA/ARS, 2014 Page 6 of 11

7 Workflow Presentation Business Tier Tier Phase Inception Elaboration Data Tier Construction Transition Conservation Planning Support System Version: <1.1> Planning Analysis & Design Presentation Tier: used to format and present the information to the user. Implementation Business Tier: used to implement the logic that will drive the system and the reason why the system exists. Testing Data Tier: in charge of storing the data (databases) and other external services that the system may use. Preliminary Iteration 2 Iteration 3 Iteration Architectural Iteration Process CPSS follows the Rational Unified Process (RUP), whose goal is to enable the production of the highest quality software that meets end user needs within a predictable schedule and budget. The RUP is an iterative process divided into four phases: inception (the establishment of the projects business case), elaboration (establishment of project plan and system architecture), construction (the system implementation), and transition (system deployment). During the inception phase, the business case and vision documents will be defined for the CPSS. The business case includes the criteria needed for the successful development of the system, a budget estimate of the resources needed to complete the system, and a schedule of the major milestones. The vision document defines the project s problem to be solved, the project s purpose and the project s major stakeholders. During this phase, a PowerPoint presentation for the entire system will be created which will serve as a proof-of-concept for the system. This presentation will be reviewed by the major stakeholders for soundness and feasibility. During the elaboration phase, the CPSS will have an easy to understand software architectural foundation and an implemented project plan (this was done first). As previously described, the architectural foundation is composed of a set of UML diagrams that entirely describes the system s functionality. USDA/ARS, 2014 Page 7 of 11

8 Make Farm Plans Phase I Conservation Planning Support System Identify Problems Version: <1.1> Watershed Group and Opportunities During the construction phase, the CPPS will be incrementally and iteratively developed and tested. The Determine Objectives development implies the complete coverage of the software requirements by following the different UML diagrams defined in the previous phase. At the end of this phase, the CPSS should be a completely designed, implemented, and tested system that is ready to be deployed for use. Inventory Resources Area Conservationist Deployment of the CPSS will occur during the transition phase where the system will be placed on a server Analyze Resource for the use of producers, soil conservationists, Data and database administrators. Once the beta release of the CPSS has been released, any system issues that arise will be logged and corrected and a new system version will be released. This process will continue until all new and legacy system requirements have been satisfied. Phase II Soil Conservationist Formulate Alternatives Decision Maker Evaluate Alternatives 4. Architectural View Decomposition 4.1 Use-Case View Make Decision The general functionality of the CPSS can be seen in the following diagram: Phase III Implement the Plan Farmer Rancher Evaluate the Make Plan Decisions The CPSS will implement the architecturally-significant subset of the use cases specified above, which USDA/ARS, 2014 Page 8 of 11

9 Soil Conservationist Formulate Alternatives include the items in Phase II. These use cases are described in the following section. (Define Management All implemented use cases have been associated in the Step 5 Base Use Cases.doc. Evaluate Alternatives Use-Case Realizations This section illustrates Make Decisions how the software actually works by giving a example on how some use-cases will be used within the system. This section will also examine how the various design structures of the CPPE contribute to its functionality. -Under Development! Architecturally Significant Use Cases Decision Maker The architecturally-significant use cases are those that exercise the most critical parts of the system architecture and demonstrate the core system functionality. In the case of the CPSS, the architecturally significant use cases that the ARS will be developing will be those that exist in Phase II of the NPPH: Formulate Alternatives: shows which management alternatives are available for the producer Evaluate Alternatives: shows a set of practical and evaluated CMS alternatives for the producer Make Decision: rank alternatives and select one to implement These and other sub-use cases are shown and briefly described below: Formulate Alternatives Brief Description: The Soil Conservationist develops alternatives that will achieve the objectives of the client, solve the identified problems, take advantage of opportunities, and prevent additional problems from occurring. Evaluate Alternatives Brief Description: The effects of each alternative are evaluated and the impacts are described. Make Decision Brief Description: The producer determines which alternative(s) to implement and the Soil Conservationist prepares the necessary documentation. 4.2 Design View This section describes the logical structure of the system as well as any definitions or acronyms. It starts from the overview of the architecture and then presents its key structural and behavioral elements such as usage and dependency. The documents that make up the logical view for the CPSS are: USDA/ARS, 2014 Page 9 of 11

10 Producer Soil Con (Browser) CPSS, Customer Service Toolkit (CST) System Glossary.doc (Application Server) Static Object Model Diagram.doc MARIA (Data Base) Overview This subsection will describe the overall decomposition of the CPSS design model as well as the interactivity that happens between components. 4.3 Process View The process view will describe the system s decomposition as well as the forms of communication between processes, like message passing, activity between components, and message sequencing. The documents that are incorporated into this view are: Collaboration Diagram.doc Sequence Diagram.doc Activity Diagram.doc 4.4 Component View The component view will describe the overall component and subsystem organization of the CPSS. This document will reside in the Component View folder. The documents included in this view are the following: User Interface Specifications.doc System Interface Specifications.doc Software Architecture Documentation.doc (this document) Overview This subsection will include the various software layers that will exist in the system as well as the boundaries between these layers. 4.5 Deployment View The CPSS deployment view of a system shows the physical nodes on which it executes. The CPSS is comprised of three physical nodes: the browser, the application server, and the database server. The simplicity of the CPSS physical view can be seen in the diagram below: 5. Size and Performance The CPSS is far from being finished but the size of the system can be pre-summarized as follows: Number of use cases implemented: 9 USDA/ARS, 2014 Page 10 of 11

11 Number of JSP files: Java-code lines: Months of labor: 6. Quality System quality issues or concerns will go here. 7. Bibliography Frank Armour, Granville Miller Advanced Use Case Modeling: Software Systems. Upper Saddle River, NJ. 425 pages. Dean Leffingwell, Don Widrig Managing Software Requirements: A Unified Approach. Indianapolis, IN. 491 pages. James Rumbaugh, Ivan Jacobson, Grady Booch The Unified Modeling Language Reference Manual. Massachusetts. 550 pages. Ahuja, L. R., K. W. Rojas, J. D. Hanson, M. J. Shaffer, and L. Ma (eds.) Root Zone Water Quality Model. Water Resources Publications LLC. Highlands Ranch, CO. 358 pages. Hatfield, J.L., J.L. Anderson, E.E. Alberts, T. Prato, D.G. Watts, A. Ward, G. Delin, and R.Swank Management Systems Evaluation Areas An Overview. Proc. Agricultural Research to Protect Water Quality. Soil Water Conservation Society, Ankeny, Iowa. Pp.1-15 Hatfield, J.L., D.B. Jaynes, M.R. Burkart, C.A. Cambardella, T.B. Moorman, J.H. Prueger, and M.A. Smith Water Quality in Walnut Creek Watershed: Setting and Farming Practices. J. Environmental Quality. 28: Heilman, P., G. Davis, P. Lawrence, J.L. Hatfield, J. Huddleston The Facilitator - An Open Source Effort to Support Multiobjective Decision Making, Integrated Assessment and Decision Support Proceedings of the 1 st biennial meeting of the International Environmental Modelling and Software Society, Vol. 3: Heilman, P., J.L. Hatfield, M. Adkins, J. Porter and R. Kurth Field scale Multiobjective Decision Making: A Case Study From Western Iowa. Journal of the AWRA, 40 (2) 333:346. Heilman, P., Hatfield, J.L., Rojas, K., Ma, L., Huddleston, J., Ahuja, L., Adkins, M How Good is Good Enough? What Information is Needed for Agricultural Water Quality Planning and How Can it be Provided Affordably? Journal of Soil and Water Conservation. v. 57(4): Ma, L., L. R. Ahuja, J. C. Ascough, II, M. J. Shaffer, K. W. Rojas, R. W. Malone, and M. R. Cameira Integrating System Modeling with Field Research in Agriculture: Applications of Root Zone Water Quality Model (RZWQM). Adv. Agron. 71: Natural Resources Conservation Service National Planning Procedures Handbook. 164 pages. Onstad, C.A., M.R. Burkart, and G.D. Bubenzer Agricultural Research to Protect Water Quality. J. Soil and Water Conserv. 46: USDA/ARS, 2014 Page 11 of 11

INTRODUCING A MULTIVIEW SOFTWARE ARCHITECTURE PROCESS BY EXAMPLE Ahmad K heir 1, Hala Naja 1 and Mourad Oussalah 2

INTRODUCING A MULTIVIEW SOFTWARE ARCHITECTURE PROCESS BY EXAMPLE Ahmad K heir 1, Hala Naja 1 and Mourad Oussalah 2 INTRODUCING A MULTIVIEW SOFTWARE ARCHITECTURE PROCESS BY EXAMPLE Ahmad K heir 1, Hala Naja 1 and Mourad Oussalah 2 1 Faculty of Sciences, Lebanese University 2 LINA Laboratory, University of Nantes ABSTRACT:

More information

Index. brief description section (Use Case Specification documents), 138 Browser window (Rational Rose), 257 Business Rules document, 212

Index. brief description section (Use Case Specification documents), 138 Browser window (Rational Rose), 257 Business Rules document, 212 Index A abstract requirements, 10 activity diagram section (Use Case -144 actors identifying, 130-131 relationships, generalization between, 137 use cases, 133-135 Actual completion date attribute actual

More information

Software Development. Modular Design and Algorithm Analysis

Software Development. Modular Design and Algorithm Analysis Software Development Modular Design and Algorithm Analysis Functional Decomposition Functional Decomposition in computer science, also known as factoring, refers to the process by which a complex problem

More information

UNIT-I Introduction of Object Oriented Modeling

UNIT-I Introduction of Object Oriented Modeling UNIT-I Introduction of Object Oriented Modeling - Prasad Mahale Object Oriented Modeling and Reference Books: Design 1. Grady Booch, James Rumbaugh, Ivar Jacobson Unified Modeling Language User Guide,

More information

index_ qxd 7/18/02 11:48 AM Page 259 Index

index_ qxd 7/18/02 11:48 AM Page 259 Index index_259-265.qxd 7/18/02 11:48 AM Page 259 Index acceptance testing, 222 activity definition, 249 key concept in RUP, 40 Actor artifact analysis and iterative development, 98 described, 97 136 in the

More information

CS560 Lecture: Software Architecture Includes slides by I. Sommerville

CS560 Lecture: Software Architecture Includes slides by I. Sommerville CS560 Lecture: Software Architecture 2009 Includes slides by I. Sommerville Architectural Design Design process for identifying the sub-systems making up a system and the framework for sub-system control

More information

Architecture Viewpoint Template for ISO/IEC/IEEE 42010

Architecture Viewpoint Template for ISO/IEC/IEEE 42010 Architecture Viewpoint Template for ISO/IEC/IEEE 42010 Rich Hilliard r.hilliard@computer.org VERSION 2.1b Abstract This is a template for specifying architecture viewpoints in accordance with ISO/IEC/IEEE

More information

Analysis and Design with UML

Analysis and Design with UML Analysis and Design with UML Page 1 Agenda Benefits of Visual Modeling History of the UML Visual Modeling with UML The Rational Iterative Development Process Page 2 What is Visual Modeling? Item Order

More information

Session 8: UML The Unified Modeling (or the Unstructured Muddling) language?

Session 8: UML The Unified Modeling (or the Unstructured Muddling) language? Session 8: UML The Unified Modeling (or the Unstructured Muddling) language? A few observations, opinions, pros & cons COMP 320 / 420 Spring, 2018 Mr. Weisert Where did the UML come from? Object-oriented

More information

CS2353 OBJECT ORIENTED ANALYSIS AND DESIGN UNIT- I

CS2353 OBJECT ORIENTED ANALYSIS AND DESIGN UNIT- I CS2353 OBJECT ORIENTED ANALYSIS AND DESIGN UNIT- I Introduction to OOAD What is OOAD? What is UML? What are the United process(up) phases - Case study the NextGen POS system, Inception -Use case Modeling

More information

Introduction. Chapter 1. What Is Visual Modeling? The Triangle for Success. The Role of Notation. History of the UML. The Role of Process

Introduction. Chapter 1. What Is Visual Modeling? The Triangle for Success. The Role of Notation. History of the UML. The Role of Process Quatrani_Ch.01.fm Page 1 Friday, October 27, 2000 9:02 AM Chapter 1 Introduction What Is Visual Modeling? The Triangle for Success The Role of Notation History of the UML The Role of Process What Is Iterative

More information

The Process of Software Architecting

The Process of Software Architecting IBM Software Group The Process of Software Architecting Peter Eeles Executive IT Architect IBM UK peter.eeles@uk.ibm.com 2009 IBM Corporation Agenda IBM Software Group Rational software Introduction Architecture,

More information

UML Modeling. Sumantra Sarkar. 29 th June CIS 8090 Managing Enterprise Architecture

UML Modeling. Sumantra Sarkar. 29 th June CIS 8090 Managing Enterprise Architecture UML Modeling Sumantra Sarkar ssarkar@cis.gsu.edu 29 th June 2010 CIS 8090 Managing Enterprise Architecture All diagrams and definitions used in this presentation have been acknowledged in the reference

More information

Comparative Analysis of Architectural Views Based on UML

Comparative Analysis of Architectural Views Based on UML Electronic Notes in Theoretical Computer Science 65 No. 4 (2002) URL: http://www.elsevier.nl/locate/entcs/volume65.html 12 pages Comparative Analysis of Architectural Views Based on UML Lyrene Fernandes

More information

Incremental development A.Y. 2018/2019

Incremental development A.Y. 2018/2019 Incremental development A.Y. 2018/2019 Incremental development Interleaves the activities of specification, development, and validation. The system is developed as a series of versions (increments), with

More information

CSC Advanced Object Oriented Programming, Spring Overview

CSC Advanced Object Oriented Programming, Spring Overview CSC 520 - Advanced Object Oriented Programming, Spring 2018 Overview Brief History 1960: Simula first object oriented language developed by researchers at the Norwegian Computing Center. 1970: Alan Kay

More information

Software Engineering Lab Manual

Software Engineering Lab Manual Kingdom of Saudi Arabia Ministry Education Prince Sattam Bin Abdulaziz University College of Computer Engineering and Sciences Department of Computer Science Software Engineering Lab Manual 1 Background:-

More information

BDSA Introduction to OOAD. Jakob E. Bardram

BDSA Introduction to OOAD. Jakob E. Bardram BDSA Introduction to OOAD Jakob E. Bardram Programming is Fun Developing Quality Software is Hard. Craig Larman in [OOAD] book 2 Object-Oriented Analysis & Design (OOAD) This Lecture Unified Modeling Language

More information

Software Engineering

Software Engineering Software Engineering A systematic approach to the analysis, design, implementation and maintenance of software. Software Development Method by Jan Pettersen Nytun, page 1 Software Engineering Methods Most

More information

SOFTWARE DESIGN COSC 4353 / Dr. Raj Singh

SOFTWARE DESIGN COSC 4353 / Dr. Raj Singh SOFTWARE DESIGN COSC 4353 / 6353 Dr. Raj Singh UML - History 2 The Unified Modeling Language (UML) is a general purpose modeling language designed to provide a standard way to visualize the design of a

More information

Requirements and Design Overview

Requirements and Design Overview Requirements and Design Overview Robert B. France Colorado State University Robert B. France O-1 Why do we model? Enhance understanding and communication Provide structure for problem solving Furnish abstractions

More information

Index. : (colon), 80 <<>> (guillemets), 34, 56

Index. : (colon), 80 <<>> (guillemets), 34, 56 : (colon), 80 (guillemets), 34, 56 A Abstraction, 3 Acronyms, 54 Action field, 140 Actions tab, 140 ActiveX controls (Microsoft), 163 Activities. See also Activity diagrams basic description of, 241

More information

Week 9 Implementation

Week 9 Implementation Week 9 Implementation Dr. Eliane l. Bodanese What is more important From a software engineering perspective: Good Gui? does what customer wants maintainable, extensible, reusable Commented Code? how is

More information

Designing Component-Based Architectures with Rational Rose RealTime

Designing Component-Based Architectures with Rational Rose RealTime Designing Component-Based Architectures with Rational Rose RealTime by Reedy Feggins Senior System Engineer Rational Software Rose RealTime is a comprehensive visual development environment that delivers

More information

The Web Service Sample

The Web Service Sample The Web Service Sample Catapulse Pacitic Bank The Rational Unified Process is a roadmap for engineering a piece of software. It is flexible and scalable enough to be applied to projects of varying sizes.

More information

How and Why to Use the Unified Modeling Language. among software components, architectural-based

How and Why to Use the Unified Modeling Language. among software components, architectural-based This article addresses the Unified Modeling Language and its purpose, constructs, and application to defense software development applications. The Unified Modeling Language (UML) is a notation that can

More information

1 Introduction. 1.1 Introduction

1 Introduction. 1.1 Introduction 1 Introduction 1.1 Introduction This book introduces and guides you through the use of the Unified Modeling Language (UML) and the Unified Process (both originally devised by Grady Booch, James Rumbaugh

More information

Introduction to Software Engineering. ECSE-321 Unit 9 Architectural Design Approaches

Introduction to Software Engineering. ECSE-321 Unit 9 Architectural Design Approaches Introduction to Software Engineering ECSE-321 Unit 9 Architectural Design Approaches Requirement Elicitation Analysis (Software Product Design) Architectural Design Detailed Design Architectural Design

More information

<Company Name> <Project Name> Software Requirements Specification For <Subsystem or Feature> Version <1.0>

<Company Name> <Project Name> Software Requirements Specification For <Subsystem or Feature> Version <1.0> For Version [Note: The following template is provided for use with the Rational Unified Process. Text enclosed in square brackets and displayed

More information

Chapter 1: Principles of Programming and Software Engineering

Chapter 1: Principles of Programming and Software Engineering Chapter 1: Principles of Programming and Software Engineering Data Abstraction & Problem Solving with C++ Fifth Edition by Frank M. Carrano Software Engineering and Object-Oriented Design Coding without

More information

Getting a Quick Start with RUP

Getting a Quick Start with RUP Getting a Quick Start with RUP By: Doug Rosenberg and Jeff Kantor, ICONIX Software Engineering, Inc. Abstract Many people want the rigor of an industrial-strength process like the RUP but aren't quite

More information

Software Service Engineering

Software Service Engineering Software Service Engineering Lecture 4: Unified Modeling Language Doctor Guangyu Gao Some contents and notes selected from Fowler, M. UML Distilled, 3rd edition. Addison-Wesley Unified Modeling Language

More information

Credit where Credit is Due. Goals for this Lecture. Introduction to Design

Credit where Credit is Due. Goals for this Lecture. Introduction to Design Credit where Credit is Due Lecture 17: Intro. to Design (Part 1) Kenneth M. Anderson Object-Oriented Analysis and Design CSCI 6448 - Spring Semester, 2002 Some material presented in this lecture is taken

More information

Software Process. Software Process

Software Process. Software Process Software Process What is SW process? Definition, Development, Support phases Process models: Waterfall Prototyping Spiral, Incremental & iterative (best practices) UP process model What is it? How does

More information

RUP for Systems Z and other Legacy Systems

RUP for Systems Z and other Legacy Systems IBM Software Group RUP for Systems Z and other Legacy Systems Susan M Burk Senior Managing Consultant IBM smburk@us.ibm.com 413-726-9361 2006 IBM Corporation Agenda Objectives A Quick Introduction to RUP

More information

Object Oriented System Development

Object Oriented System Development Object Oriented System Development Ratna Wardani Semester Genap, 2012 2/26/2012 Ratna W/PSBO2012 1 About This Course It shows how to apply OOAD technique to analyze and develop systems.. It gives you an

More information

The Unified Modeling Language User Guide

The Unified Modeling Language User Guide The Unified Modeling Language User Guide Grady Booch James Rumbaugh Ivar Jacobson Rational Software Corporation TT ADDISON-WESLEY Boston San Francisco New York Toronto Montreal London Munich Paris Madrid

More information

Information systems modelling UML and service description languages

Information systems modelling UML and service description languages Internet Engineering Tomasz Babczyński, Zofia Kruczkiewicz Tomasz Kubik Information systems modelling UML and service description languages Introduction INFORMATION SYSTEMS MODELLING, UML AND SERVICE DESCRIPTION

More information

Chapter 1: Programming Principles

Chapter 1: Programming Principles Chapter 1: Programming Principles Object Oriented Analysis and Design Abstraction and information hiding Object oriented programming principles Unified Modeling Language Software life-cycle models Key

More information

Mathematics and Computing: Level 2 M253 Team working in distributed environments

Mathematics and Computing: Level 2 M253 Team working in distributed environments Mathematics and Computing: Level 2 M253 Team working in distributed environments SR M253 Resource Sheet Specifying requirements 1 Overview Having spent some time identifying the context and scope of our

More information

INTERACTION ARCHITECTURAL MODELING. Lecture 9 Interaction Architectureal Modeling

INTERACTION ARCHITECTURAL MODELING. Lecture 9 Interaction Architectureal Modeling User Centred Design 09 INTERACTION ARCHITECTURAL MODELING Lecture 9 Interaction Architectureal Modeling PREVIOUS LESSON(S) Synthetizing User Research Personas Actors / User Roles Scenarios Essential Use

More information

Modeling Requirements

Modeling Requirements Modeling Requirements Critical Embedded Systems Dr. Balázs Polgár Prepared by Budapest University of Technology and Economics Faculty of Electrical Engineering and Informatics Dept. of Measurement and

More information

History of object-oriented approaches

History of object-oriented approaches Prof. Dr. Nizamettin AYDIN naydin@yildiz.edu.tr http://www.yildiz.edu.tr/~naydin Object-Oriented Oriented Systems Analysis and Design with the UML Objectives: Understand the basic characteristics of object-oriented

More information

Index. Add Diagram > Sequence Diagram command,

Index. Add Diagram > Sequence Diagram command, Quatrani.book Page 183 Monday, May 8, 2006 11:56 AM Index A abstraction, 3 actions completing before processing, 54 55 data flowing through, 53 passing control between, 51 performing, 155 157 as round-cornered

More information

Proposal of a Supporting Method for Diagrams Generation with the Transformation Rules in UML

Proposal of a Supporting Method for Diagrams Generation with the Transformation Rules in UML Proposal of a Supporting Method for Diagrams Generation with the Transformation Rules in UML Tetsuro Katayama Department of Computer Science and Systems Engineering, Faculty of Engineering, Miyazaki University

More information

Rational Software White paper

Rational Software White paper Unifying Enterprise Development Teams with the UML Grady Booch Rational Software White paper 1 There is a fundamental paradox at play in contemporary software development. On the one hand, organizations

More information

<Project Name> Target-Organization Assessment

<Project Name> Target-Organization Assessment Version [Note: The following template is provided for use with the Rational Unified Process. Text enclosed in square brackets and displayed in blue italics (style=infoblue) is included

More information

Quality-Driven Architecture Design Method

Quality-Driven Architecture Design Method Quality-Driven Architecture Design Method Matinlassi Mari, Niemelä Eila P.O. Box 1100, 90571 Oulu Tel. +358 8 551 2111 Fax +358 8 551 2320 {Mari.Matinlassi, Eila.Niemela}@vtt.fi Abstract: In this paper

More information

An Integrated Approach to Documenting Requirements with the Rational Tool Suite

An Integrated Approach to Documenting Requirements with the Rational Tool Suite Copyright Rational Software 2002 http://www.therationaledge.com/content/dec_02/t_documentreqs_kd.jsp An Integrated Approach to Documenting Requirements with the Rational Tool Suite by Kirsten Denney Advisor

More information

OO Project Management

OO Project Management OO Project Management Twin Cities Java User s Group November 17, 1999 Mary Poppendieck Poppendieck.LLC Object Oriented Development Objects Simulate the Real World Example: Process Control On/Off Switch

More information

Layering Strategies. Peter Eeles RSO (UK) Rational Software Ltd. Version rd August 2001

Layering Strategies. Peter Eeles RSO (UK) Rational Software Ltd. Version rd August 2001 Layering Strategies Peter Eeles RSO (UK) Rational Software Ltd. peter.eeles@rational.com Version 2.0 23 rd August 2001 A number of techniques exist for decomposing software systems. Layering is one example

More information

Experiment no 4 Study of Class Diagram in Rational Rose

Experiment no 4 Study of Class Diagram in Rational Rose Experiment no 4 Study of Class Diagram in Rational Rose Objective-: To studyclass Diagram in Rational Rose. References-: www.developer.com The Unified Modeling Language User Guide by Grady Booch Mastering

More information

CSE 308. UML Overview Use Case Diagrams. Reference. Class diagrams. Session 6 UML Intro/Use cases. Robert Kelly, B. Bruegge,

CSE 308. UML Overview Use Case Diagrams. Reference. Class diagrams. Session 6 UML Intro/Use cases. Robert Kelly, B. Bruegge, CSE 308 UML Overview Use Case Diagrams Class diagrams Reference en.wikipedia.org/wiki/use_case 2 1 What is Modeling? Modeling consists of building an abstraction of reality Abstractions are simplifications

More information

lnteroperability of Standards to Support Application Integration

lnteroperability of Standards to Support Application Integration lnteroperability of Standards to Support Application Integration Em delahostria Rockwell Automation, USA, em.delahostria@ra.rockwell.com Abstract: One of the key challenges in the design, implementation,

More information

Notation Standards for TOGAF:

Notation Standards for TOGAF: Welcome! Notation Standards for TOGAF: BPMN and UML Play Together Matt Smith Architecture Consultant Architecture Context Business Modeling Process Information Messaging Participants Software Systems Analysis

More information

The Unified Modeling Language (UML)

The Unified Modeling Language (UML) The Unified Modeling Language (UML) A Very Distilled Introduction to The Unified Modeling Language (UML). A quick introduction to UML is given. Thereafter, the surface of class and activity diagrams and

More information

INTEGRATING DESIGN RATIONALE WITH A PROCESS MODEL

INTEGRATING DESIGN RATIONALE WITH A PROCESS MODEL INTEGRATING DESIGN RATIONALE WITH A PROCESS MODEL J. E. BURGE, D. C. BROWN AI in Research Group Department of Computer Science WPI, 100 Institute Road Worcester, MA 01609, USA Abstract. One goal for having

More information

Systems Analysis and Design in a Changing World, Fourth Edition

Systems Analysis and Design in a Changing World, Fourth Edition Systems Analysis and Design in a Changing World, Fourth Edition Systems Analysis and Design in a Changing World, 4th Edition Learning Objectives Explain the purpose and various phases of the systems development

More information

CISC 322 Software Architecture

CISC 322 Software Architecture CISC 322 Software Architecture UML - The Unified Modelling Language Nicolas Bettenburg 1 DEFINITION The Unified Modelling Language (UML) is a graphical language for visualizing, specifying, constructing,

More information

White Paper. Rose PowerBuilder Link

White Paper. Rose PowerBuilder Link White Paper Rose PowerBuilder Link Contents Overview 1 Audience...1 The Software Development Landscape...1 The Nature of Software Development...1 Better Software Development Methods...1 Successful Software

More information

Diseño y Evaluación de Arquitecturas de Software. Architecture Based Design Method

Diseño y Evaluación de Arquitecturas de Software. Architecture Based Design Method Diseño y Evaluación de Arquitecturas de Software Architecture Based Design Method César Julio Bustacara Medina Facultad de Ingeniería Pontificia Universidad Javeriana 08/10/2015 1 Architecture Based Design

More information

Reducing the costs of rework. Coping with change. Software prototyping. Ways to Cope with change. Benefits of prototyping

Reducing the costs of rework. Coping with change. Software prototyping. Ways to Cope with change. Benefits of prototyping Coping with change Change is inevitable in all large software projects. Business changes lead to new and changed system requirements New technologies open up new possibilities for improving implementations

More information

Briefing Date. Purpose

Briefing Date. Purpose Applying the Systems Engineering Method for the Joint Capabilities Integration and Development System (JCIDS) Chris Ryder and Dave Flanigan 27 October 2005 Purpose JCIDS prescribes a joint forces approach

More information

Object-Oriented Software Development Goal and Scope

Object-Oriented Software Development Goal and Scope Object-Oriented Software Development Goal and Scope Koichiro Ochimizu Japan Advanced Institute of Science and Technologies School of Information Science Scope and Goal Goal enable you to understand basic

More information

CSE 308. UML Overview Use Case Diagrams. Reference. en.wikipedia.org/wiki/class_diagram. Robert Kelly, B. Bruegge,

CSE 308. UML Overview Use Case Diagrams. Reference. en.wikipedia.org/wiki/class_diagram. Robert Kelly, B. Bruegge, CSE 308 UML Overview Use Case Diagrams Class diagrams Reference en.wikipedia.org/wiki/class_diagram 2 1 What is Modeling? Modeling consists of building an abstraction of reality Abstractions are simplifications

More information

An integrated GIS-AnnAGNPS modeling interface for non-point source pollution assessment

An integrated GIS-AnnAGNPS modeling interface for non-point source pollution assessment An integrated GIS-AnnAGNPS modeling interface for non-point source pollution assessment Huaguo Xiao Abstract AnnAGNPS (Annualized AGricultural Non-point Source), a continuous simulation and distributed

More information

Systems Analysis & Design

Systems Analysis & Design Systems Analysis & Design Dr. Ahmed Lawgali Ahmed.lawgali@uob.edu.ly Slide 1 Systems Analysis & Design Course Textbook: Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition

More information

Catalogue of architectural patterns characterized by constraint components, Version 1.0

Catalogue of architectural patterns characterized by constraint components, Version 1.0 Catalogue of architectural patterns characterized by constraint components, Version 1.0 Tu Minh Ton That, Chouki Tibermacine, Salah Sadou To cite this version: Tu Minh Ton That, Chouki Tibermacine, Salah

More information

What is a software architecture?

What is a software architecture? What is a software architecture? Peter Eeles, Senior IT Architect, IBM, 15 Feb 2006 There is no doubt that the world is becoming increasingly dependent on software. Software is an essential element of

More information

for TOGAF Practitioners Hands-on training to deliver an Architecture Project using the TOGAF Architecture Development Method

for TOGAF Practitioners Hands-on training to deliver an Architecture Project using the TOGAF Architecture Development Method Course Syllabus for 3 days Expert led Enterprise Architect hands-on training "An Architect, in the subtlest application of the word, describes one able to engage and arrange all elements of an environment

More information

Lecture 7: Software Processes. Refresher: Software Always Evolves

Lecture 7: Software Processes. Refresher: Software Always Evolves Lecture 7: Software Processes What is a Software Development Process? The Lifecycle of a Software Project Agile vs. Disciplined Some common approaches: RUP, SCRUM, XP, ICONIX, Where UML fits in (next lecture)

More information

Exercise Unit 2: Modeling Paradigms - RT-UML. UML: The Unified Modeling Language. Statecharts. RT-UML in AnyLogic

Exercise Unit 2: Modeling Paradigms - RT-UML. UML: The Unified Modeling Language. Statecharts. RT-UML in AnyLogic Exercise Unit 2: Modeling Paradigms - RT-UML UML: The Unified Modeling Language Statecharts RT-UML in AnyLogic Simulation and Modeling I Modeling with RT-UML 1 RT-UML: UML Unified Modeling Language a mix

More information

Software Architecture Document

Software Architecture Document Software Architecture Document Clinical Research Chart Cell 1.0 1 of 18 Abstract: This is a software architecture document for CRC (Clinical Research Chart) cell. It identifies and explains the important

More information

Software Architectures. Lecture 6 (part 1)

Software Architectures. Lecture 6 (part 1) Software Architectures Lecture 6 (part 1) 2 Roadmap of the course What is software architecture? Designing Software Architecture Requirements: quality attributes or qualities How to achieve requirements

More information

Foundations of Software Engineering

Foundations of Software Engineering Foundations of Software Engineering Lecture 8: Software Architecture II Christian Kästner (with slides by Ivan Ruchkin) 2 Learning Goals Understand key parts of architectural process Use architectural

More information

PROJECT DOCUMENTATION WITH ENTERPRISE ARCHITECT

PROJECT DOCUMENTATION WITH ENTERPRISE ARCHITECT PROJECT DOCUMENTATION WITH ENTERPRISE ARCHITECT How to organize project documentation with Enterprise Architect. By Amir Firdus (www.firdus.com) March 2010 Overview It is not an easy step to go from reading

More information

A Geospatial Modeling Interface (GMI) for SWAT Model Deployment and Evaluation

A Geospatial Modeling Interface (GMI) for SWAT Model Deployment and Evaluation A Geospatial Modeling Interface (GMI) for SWAT Model Deployment and Evaluation James C. Ascough II 1, Jeffrey G. Arnold 2, Nathan P. Lighthart 3, and Nancy B. Sammons 2 1 USDA-ARS-PA, Agricultural Systems

More information

CHAPTER 5: PRINCIPLES OF DETAILED DESIGN. Software Engineering Design: Theory and Practice

CHAPTER 5: PRINCIPLES OF DETAILED DESIGN. Software Engineering Design: Theory and Practice CHAPTER 5: PRINCIPLES OF DETAILED DESIGN Software Engineering Design: Theory and Practice 1 1. Detailed Design Fundamentals 2. Structural and Behavioral Design of Components Software Engineering Design:

More information

Building a New Rational Web Site with Rational Suite

Building a New Rational Web Site with Rational Suite Building a New Rational Web Site with Rational Suite by Christina Howe Director of Internet Services Rational Software In April of last year, Rational Software determined that its Web site no longer measured

More information

LESSON PLAN SUB NAME : OBJECT ORIENTED ANALYSIS AND DESIGN UNIT SYLLABUS

LESSON PLAN SUB NAME : OBJECT ORIENTED ANALYSIS AND DESIGN UNIT SYLLABUS LP Rev. : 00 Page 1 of 6 UNIT: I FUNDAMENTALS SEMESTER : 5 FUNDAMENTALS 8 An overview of object oriented systems development Object basics Object oriented systems development life cycle. OBJECTIVE: To

More information

Introduction to software architecture Revision : 732

Introduction to software architecture Revision : 732 Introduction to software architecture Revision : 732 Denis Conan Septembre 2018 Foreword The content of these slides is extracted from the following references: L. Bass, P. Clements, and R. Kazman. Software

More information

Oliopäivät Modelling Now and in the Future, with Acronyms or without = RSA

Oliopäivät Modelling Now and in the Future, with Acronyms or without = RSA IBM Software Group Oliopäivät 28-29.11.2006 Modelling Now and in the Future, with Acronyms or without = RSA rami.talme@fi.ibm.com 2006 IBM Corporation IBM Software Group Rational software The business-driven

More information

Building the User Interface: The Case for Continuous Development in an Iterative Project Environment

Building the User Interface: The Case for Continuous Development in an Iterative Project Environment Copyright Rational Software 2002 http://www.therationaledge.com/content/dec_02/m_uiiterativeenvironment_jc.jsp Building the User Interface: The Case for Continuous Development in an Iterative Project Environment

More information

Metadata and Modeling Frameworks: The Object Modeling System Example

Metadata and Modeling Frameworks: The Object Modeling System Example Metadata and Modeling Frameworks: The Object Modeling System Example O. David a, I. W. Schneider b, and G. H. Leavesley c a Colorado State University, Fort Collins, CO, U.S.A. b USDA Agricultural Research

More information

Lecture Notes UML UNIT-II. Subject: OOAD Semester: 8TH Course No: CSE-802

Lecture Notes UML UNIT-II. Subject: OOAD Semester: 8TH Course No: CSE-802 UNIT-II Lecture Notes On UML IMPORTANCE OF MODELING, BRIEF OVERVIEW OF OBJECT MODELING TECHNOLOGY (OMT) BY RAMBAUGH, BOOCH METHODOLOGY, USE CASE DRIVE APPROACH (OOSE) BY JACKOBSON. KHALID AMIN AKHOON 1

More information

Comparative analyses for the performance of Rational Rose and Visio in software engineering teaching

Comparative analyses for the performance of Rational Rose and Visio in software engineering teaching Journal of Physics: Conference Series PAPER OPEN ACCESS Comparative analyses for the performance of Rational Rose and Visio in software engineering teaching To cite this article: Zhaojun Yu and Zhan Xiong

More information

Contemporary Design. Traditional Hardware Design. Traditional Hardware Design. HDL Based Hardware Design User Inputs. Requirements.

Contemporary Design. Traditional Hardware Design. Traditional Hardware Design. HDL Based Hardware Design User Inputs. Requirements. Contemporary Design We have been talking about design process Let s now take next steps into examining in some detail Increasing complexities of contemporary systems Demand the use of increasingly powerful

More information

Object-Oriented Analysis and Design Using UML

Object-Oriented Analysis and Design Using UML Object-Oriented Analysis and Design Using UML Student Guide - Volume 1 OO-226 Rev C D61808GC10 Edition 1.0 D62408 Copyright 2003, 2009, Oracle and/or its affiliates. All rights reserved. Disclaimer This

More information

The Great TOGAF Scavenger Hunt. Enterprise Architecture Using TOGAF 9 Course Preparation Guide

The Great TOGAF Scavenger Hunt. Enterprise Architecture Using TOGAF 9 Course Preparation Guide Enterprise Architecture Using TOGAF 9 Course Preparation Guide 2011 Metaplexity Associates LLC All Rights Reserved Version 2.0 January 2, 2011 The Open Group Certification Mark logo and TOGAF are trademarks,

More information

A PROPOSAL FOR MODELING THE CONTROL SYSTEM FOR THE SPANISH LIGHT SOURCE IN UML

A PROPOSAL FOR MODELING THE CONTROL SYSTEM FOR THE SPANISH LIGHT SOURCE IN UML A PROPOSAL FOR MODELING THE CONTROL SYSTEM FOR THE SPANISH LIGHT SOURCE IN UML D. Beltran*, LLS, Barcelona, Spain M. Gonzalez, CERN, Geneva, Switzerlan Abstract CELLS (Consorcio para la construcción, equipamiento

More information

Outline of UML and Unified Process. Object Oriented Analysis/Design/Programming UML1.5. Koichiro Ochimizu, JAIST. UML&UP outline 1.

Outline of UML and Unified Process. Object Oriented Analysis/Design/Programming UML1.5. Koichiro Ochimizu, JAIST. UML&UP outline 1. Outline of UML and Unified Process Koichiro OCHIMIZU School of Information Science JAIST Schedule Feb. 27th 13:00 Scope and Goal 14:30 Basic Concepts on Representing the World (object, class, association,

More information

Review of Basic Software Design Concepts. Fethi Rabhi SENG 2021

Review of Basic Software Design Concepts. Fethi Rabhi SENG 2021 Review of Basic Software Design Concepts Fethi Rabhi SENG 2021 1 Topics The development process Planning Designing Implementing 2 1. The development process How to organise activities related to the creation,

More information

QoS-aware model-driven SOA using SoaML

QoS-aware model-driven SOA using SoaML QoS-aware model-driven SOA using SoaML Niels Schot A thesis submitted for the degree of MSc Computer Science University of Twente EEMCS - TRESE: Software Engineering Group Examination committee: Luís Ferreira

More information

COMP 6471 Software Design Methodologies

COMP 6471 Software Design Methodologies COMP 647 Software Design Methodologies Fall 20 Dr Greg Butler http://www.cs.concordia.ca/~gregb/home/comp647-fall20.html Course Introduction Course People Course Components What the course is What the

More information

Practical Model-Driven Development with the IBM Software Development Platform

Practical Model-Driven Development with the IBM Software Development Platform IBM Software Group Practical Model-Driven Development with the IBM Software Development Platform Osmond Ng (ong@hk1.ibm.com) Technical Consultant, IBM HK SWG 2005 IBM Corporation Overview The Challenges

More information

Software Life Cycle. Main issues: Discussion of different life cycle models Maintenance or evolution

Software Life Cycle. Main issues: Discussion of different life cycle models Maintenance or evolution Software Life Cycle Main issues: Discussion of different life cycle models Maintenance or evolution Introduction software development projects are large and complex a phased approach to control it is necessary

More information

ET225P Networking Concepts [Onsite]

ET225P Networking Concepts [Onsite] ET225P Networking Concepts [Onsite] Course Description: Computer network and internetworking concepts, such as standards, topology, models, protocols, devices, operating systems and applications, will

More information

Topic 01. Software Engineering, Web Engineering, agile methodologies.

Topic 01. Software Engineering, Web Engineering, agile methodologies. Topic 01 Software Engineering, Web Engineering, agile methodologies. 1 What is Software Engineering? 2 1 Classic Software Engineering The IEEE definition: Software Engineering is the application of a disciplined,

More information

A Unified Process for Software and Documentation Development

A Unified Process for Software and Documentation Development ~ Technology & Teamwork A Unified Process for Software and Development Michael Priestley IBM Toronto Lab 115 Eglinton Ave. E. Toronto, Ont. M3C 1H7 mpriestley@acm. org Mary Hunter Utt' Sitescape, Inc.

More information

Requirement Model for Mechanical, Electrical and Software Integrated Products Using SysML

Requirement Model for Mechanical, Electrical and Software Integrated Products Using SysML 956 Requirement Model for Mechanical, Electrical and Software Integrated Products Using SysML Tadashi Gotoh 1, Takao Eguchi 1, Tsuyoshi Koga 2, Kazuhiro Aoyama 3 1 IBM Japan, Ltd., 19-21 Nihonbashi Hakozaki-cho,

More information