21
3231 Software Engineering By Germaine Cheung Hong Kong Computer Institute Lecture 1

3231 Software Engineering

  • Upload
    dick

  • View
    55

  • Download
    1

Embed Size (px)

DESCRIPTION

Lecture 1. 3231 Software Engineering. By Germaine Cheung Hong Kong Computer Institute. Miss Germaine Cheung. [email protected] http://unl.hkci.edu.hk/~germaine Bachelor of Business Systems (Monash University – Australia) - PowerPoint PPT Presentation

Citation preview

Page 1: 3231 Software Engineering

3231 Software Engineering

By Germaine CheungHong Kong Computer Institute

Lecture 1

Page 2: 3231 Software Engineering

Miss Germaine Cheung

[email protected]://unl.hkci.edu.hk/~germaineBachelor of Business Systems (Monash University – Australia)Master of Business Systems (Monash University – Australia)Master of Science in Information Technology in education (University of Hong Kong)

Page 3: 3231 Software Engineering

Assessment Method

Assignment 1 20%Assignment 2 20%Quiz 10%Examination 50%

Page 4: 3231 Software Engineering

Chapter 6

System Engineering

Page 5: 3231 Software Engineering

System Engineering

Elements of a computer-based system– Software– Hardware– People– Database– Documentation– Procedures

Systems– A hierarchy of macro-elements

Page 6: 3231 Software Engineering

The Hierarchy

World view

Business orProduct Domain

Domain of interest

Domain view

System element

Element view

Detailed view

Page 7: 3231 Software Engineering

System Modeling

define the processes that serve the needs of the view under consideration.represent the behavior of the processes and the assumptions on which the behavior is based.explicitly define both exogenous and endogenous input to the model.– exogenous inputs link one constituent of a given view with other

constituents at the same level of other levels; endogenous input links individual components of a constituent at a particular view.

represent all linkages (including output) that will enable the engineer to better understand the view.

Page 8: 3231 Software Engineering

uses an integrated set of procedures, methods, and uses an integrated set of procedures, methods, and tools to identify how information systems can best meet tools to identify how information systems can best meet the strategic goals of an enterprisethe strategic goals of an enterprisefocuses first on the enterprise and then on the business focuses first on the enterprise and then on the business areaareacreates enterprise models, data models and process creates enterprise models, data models and process modelsmodelscreates a framework for better information management creates a framework for better information management distribution, and controldistribution, and control

Business Process Engineering

Page 9: 3231 Software Engineering

System Architectures

Three different architectures must be analyzed and designed within the context of business objectives and goals:

• data architecture• applications architecture• technology infrastructure

data architecture provides a framework for the information needs of a business or business functionapplication architecture encompasses those elements of a system that transform objects within the data architecture for some business purposetechnology infrastructure provides the foundation for the data and application architectures

Page 10: 3231 Software Engineering

The BPE Hierarchy

Information strategy planning (ISP)strategic goals definedsuccess factors/business rules identifiedenterprise model created

Business area analysis (BAA)processes/services modeled interrelationships of processes and data

Application Engineeringmodeling applications/procedures that address

(BAA) and constraints of ISPConstruction and deliveryusing CASE and 4GTs, testing

Page 11: 3231 Software Engineering

Information Strategy Planning

Management issuesdefine strategic business goals/objectivesisolate critical success factorsconduct analysis of technology impactperform analysis of strategic systems

Technical issuescreate a top-level data modelcluster by business/organizational arearefine model and clustering

Page 12: 3231 Software Engineering

Defining Objectives and Goals

Objective—general statement of directionGoal—defines measurable objective: “reduce manufactured cost of our product”Subgoals:

decrease reject rate by 20% in first 6 monthsgain 10% price concessions from suppliersre-engineer 30% of components for ease of

manufacture during first yearObjectives tend to be strategic while goals tend to be tactical

Page 13: 3231 Software Engineering

Business Area Analysis

define “naturally cohesive groupings of business functions and data” (Martin)perform many of the same activities as ISP, but narrow scope to individual business areaidentify existing (old) information systems / determine compatibility with new ISP modeldefine systems that are problematic defining systems that are incompatible with new

information modelbegin to establish re-engineering priorities

Page 14: 3231 Software Engineering

Product EngineeringSystem analysis

(World view)

The completeproduct

capabilities

Componentengineering

(Domain view)

Processing requirement

Analysis & DesignModeling

(Element view)

Construction&

Integration(Detailed view)

software

function

SoftwareEngineering

programcomponent

hardware

data behavior

Page 15: 3231 Software Engineering

Product Architecture Template

user interface processing

inputprocessing

outputprocessing

maintenance and self-test

process and controlfunctions

Page 16: 3231 Software Engineering

Architecture Flow Diagram

bar codereader

subsystem

bar codedecoding

subsystem

data baseaccess

subsystem

shuntcontrol

subsystem

reportformating

subsystem

diagnosticssubsystem

operatorinterface

subsystem

shuntcontroller

mainframecommunications

driver

operator requests CLSS queries, reports, displays

shunt control statusbar code acquisition request

bar code

pulse tach input

linespeed

bar codereader status

sensor status

raw barcode data

partnumber

reportrequests

binlocation

key

sort records

formatedreporting data

sorting reports

shunt commands

CLSS reports

BCR statusshunt status

communications status

timing/location data

operatorinterface

data acquisitioninterface diagnostic interface output interface

CLSS processing & control

sensor dataacquisitionsubsystem

Page 17: 3231 Software Engineering

System Modeling with UML

Deployment diagrams– Each 3-D box depicts a hardware element that is part of

the physical architecture of the system

Activity diagrams– Represent procedural aspects of a system element

Class diagrams– Represent system level elements in terms of the data that

describe the element and the operations that manipulate the data

These and other UML models will be discussed later

Page 18: 3231 Software Engineering

Deployment Diagram

CLSS processor

Sorting subsystem

Sensor dataacquisition subsystem

Operator display

shunt controller

Conveyor Pulse tach

Bar code reader Shunt actuator

Page 19: 3231 Software Engineering

Activity Diagram

get conveyor speed

send shunt

control data

get shunt status read bar code

start conveyor line

determine bin location

valid bar code

set for reject bin

conveyor in motion

read bar code

get conveyor status

produce report entry

conveyor stopped

invalid bar code

Page 20: 3231 Software Engineering

Class Diagram

Box

barcode forwardSpeed conveyorLocation height width depth weight contents

readBarcode() updateSpeed() readSpeed() updateLocation() readLocation() getDimensions() getWeight() checkContents()

class name

attributes note use of capital letter for multi-word attribute names

operations (parentheses at endof name indicate the list of attributes that theoperation requires)

Page 21: 3231 Software Engineering

The End