Академический Документы
Профессиональный Документы
Культура Документы
Copyright Regulations 1969 WARNING This material has been reproduced and communicated to you by or on behalf of Monash University pursuant to Part VB of the Copyright Act 1968 (the Act).
The material in this communication may be subject to copyright under the Act. Any further reproduction or communication of this material by you may be the subject of copyright protection under the Act. Do not remove this notice.
Module 1 Objectives
On completion of this session you should have a basic conceptual understanding of: The structure of the Unified Modelling Language. UMLs building blocks as being composed of things, relationships, and diagrams; UMLs four common mechanism: specifications, adornments, common divisions and extensibility mechanisms; Five ways by which to look at the architecture of a system: logical, process, implementation, deployment and use case views. The axioms of the Unified Process The five core workflows of the Unified Process: requirements, analysis, design, implementation, and testing. The four phases of the Unified Process: inception, elaboration, construction, transition.
3 4
Terminology
Information System A System which assembles, stores, processes and delivers information relevant to an organisation (or to society), in such a way that the information is accessible and useful to those who wish to use it, including managers, staff, clients and citizens. An information system is a human activity (social) system which may or may not involve the use of computer systems. (British Computer Society)
In this unit, we assume the use of computer systems. Also we will deal with software systems in general (not only information systems)
Should be able to inform decision makers at all levels of an organisation of the state variables which represent the current state of the organisation.
State variables any quantity or piece of information which can be used to describe the current status of the organisation
it is the responsibility of the information systems manager or chief information officer (CIO) within the organisation to decide whether a new software system is needed.
10
Roles
Client The organisation/person requiring the system Vendor The organisation/person which provides the system A systems development organisation employs IT professionals with a range of skills and experience, who follow defined methodologies to produce software for clients:
Analysts/Designers Programmers HCI-specialists Graphic Artists And other roles
11
12
The Unified Modeling Language (UML) is a way to graphically present the design of a software systems parts. UP uses UML
As the way to document the work performed
A Quality Product is one which satisfies the clients requirements A Quality Process is a process which allows the product to be developed on time, within budget, and which is easy to work with, understand and maintain. (Burch 1992)
13 14
UML An Introduction
www.monash.edu.au
16
Cat mat sat the on The mat sat on the cat The cat sat on the mat
UML Structure
UML consists of:
Building blocks Common Mechanisms Architecture
Model vs Diagrams
Model the things and relationships Diagram presents a partial view of the model Some thing can be in the model but might not be in any diagram (particularly when using a tool to make models) Some thing in a diagram must be in the model!
Some thing from the model may be presented from multiple, different perspectives in different diagrams
17
18
Grouping things
Mechanisms for grouping semantically related things as a unit
Annotational things
Mechanism for writing notes using plain natural language.
19
20
UML Structure
UML consists of:
Building blocks Common Mechanisms Architecture
21
22
Adornments
Items of information which can be exposed on a model element
Stereotypes
Allow you to invent new types of modeling elements based on existing elements YOU decide its semantics. Usually represented by a name/description inside guillemets, e.g. sql-query
Common Divisions
Ways of thinking about the world Classifier/Instance Interface/Implementation
Tagged values
Properties associated with model elements: name-value pair E.g. {language = Java} {author = Ken Smith}
24
23
UML Structure
UML consists of:
Building blocks Common Mechanisms Architecture
Process view
system performance, scalability and vocabulary
Implementation view
how system is assembled and configured
Deployment view
models the physical deployment of the system
25
Software Engineering
Software Engineering is the task of designing a software system
Compare to other Engineering, e.g. Civil Engineering
IEEE definition: The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software
(IEEE Standard 610.12-1999)
Unified Process
The Unified Process is a software engineering process
Originated with the inventors of UML A commercial version exists called Rational Unified Process
UP Axioms
UP has three basic axioms Requirements and risk driven Architecture-centric Iterative and incremental
The UP models the who, when and what of the system development process
Its main purpose is to provide guidance about how you would conceive of the process of software development
Key elements:
Workers Activities Artifacts Workflows
29 30
Iteration Workflows
A workflow is a set of activities, performed by workers in some order, to use or produce artifacts or outcomes There are 5 core workflows in UP:
Requirements Analysis Design Implementation Test
Each iteration involves the 5 core workflows to some extent. Result of an iteration is called a baseline.
The difference between it and the previous baseline is an increment.
The Structure of UP
UP divides the software development life cycle into four phases Each phase ends with a major milestone.
Inception Life cycle objectives Elaboration Life Cycle Architecture Construction Initial Operational Capability Transition Product Release
33
34
Shows the relative amount of effort spent in different workflows (down left side), at different phases of the project.
An Activity is a tangible unit of work performed by a worker An Artifact is a tangible piece of information that is created, changed and used by workers when performing activities An artifact can be a model, a model element or a document.
35
36
Inception Phase
Focus is on requirements and analysis workflows Goals are:
Establish feasibility Create a business case to demonstrate project will deliver business benefits Capture essential requirements To help scope the system Identify critical risks
[Quantifiable]
Elaboration Phase
The Focus in each workflow is as follows:
Requirements refine the system scope and requirements Analysis Establish what to build Design create a stable architecture Implementation build the architectural baseline Test - test the architectural baseline
Goals:
Create an executable architectural baseline Refine the risk assessment Define quality attributes (non-functional requirements) Capture use case for ~80% of the functional requirements
Milestone:
Lifecycle objectives See textbook Table 2.1
Construction Phase
Focus: mainly implementation workflow Focus for each workflow:
Requirements uncover any requirements that had been missed Analysis finish the analysis model Design finish the design model Implementation build the initial operational capability Test test the initial operational capability
Transition Phase
Mainly implementation and test workflows Focus:
Requirements not applicable Analysis not applicable Design modify the design if problems arise in beta testing Implementation tailor the software for the users site; correct problems uncovered in testing Test beta testing, acceptance testing (at user site)
Goals
To complete all requirements, analysis and design To evolve the architectural baseline (from Elaboration) into the final system
Goals:
Correct defects Prepare user sites for the software; tailor software to operate at the user site Conduct a post-project review
To provide system developers with better understanding of the system requirements To define the boundaries of the system To provide a basis for planning the technical content of iterations To provide a basis for estimating cost/time to develop
41 42
Source: Arlow
Requirements Workflow
Key Artifacts produced:
Use Case Model (contains Use Cases, and Actors) Requirements List Glossary defines key terms for the project
43
44
Source: Jacobson
45 46
Described using the language of the customer/client organisation External view of the system Structured by use cases; gives structure to the external view Used primarily as a contract between the customer and the developers on what the system should and should not do
Source: Jacobson: Table 8.1
47
Described using the language of the developers Internal view of the system Structured by stereotypical classes and packages; gives structure to the internal view Used primarily by developers to understand how the system should be shaped, i.e. designed and implemented
Continued
48
May contain redundancies, inconsistencies, etc. among requirements Captures the functionality of the system, including architecturally significant functionality
Should not contain redundancies, inconsistencies, etc. among requirements Outlines how to realize the functionality within the system, including architecturally significant functionality; works as a first cut at design Defines use-case realizations, each one representing the analysis of a use case from the use-case model
Defines use cases that are further analysed in the analysis model
Key activities:
Architectural Design Design a use case Design a class Design a subsystem
Design Model
Physical model, because it is a blueprint of the implementation
Three (conceptual) stereotypes Any number of (physical) on classes: control, entity, stereotypes on classes, and boundary depending on implementation language
Source: Jacobson
51 52
Design Model
Manifests the design of the system, including its architecture
Shapes the system while trying to preserve the structure defined by the analysis model as much as possible.
53
54
55
Source: Jacobson
56
Homework
Work through Module 1 of the Study Guide Read relevant parts from Arlow Chapters 1 and 2 and Kruchten (on the Librarys web site)
Read through the assignment tasks and case study when they become available
Before the next lecture session, read through Module 2 of the study guide, and the specified readings from Arlow and from Armour (on the Librarys web site)
57 58