SlideShare a Scribd company logo
Unit-4
System modelsSystem models
Topics covered
Context models
Behavioural modelsBehavioural models
Data models
Object models
CASE workbenches
System modelling
System modelling helps the analystanalyst to understand
the functionality of the system and modelsmodels are usedy y
to communicatecommunicate with customerscustomers..
Different models present the system from differentDifferent models present the system from different
perspectives
•• ExternalExternal perspectiveperspective showing the system’s context or
environment;
Beha io ralBeha io ral perspecti eperspecti e sho ing the beha io r of the s stem•• BehaviouralBehavioural perspectiveperspective showing the behaviour of the system;
•• StructuralStructural perspectiveperspective showing the system or data
architecture.architecture.
Model types
DataData processingprocessing modelmodel showing how the datadata isis
processedprocessed at different stages.
CompositionComposition modelmodel showing how entitiesentities areare
composedcomposed of other entitiescomposedcomposed of other entities.
ArchitecturalArchitectural modelmodel showing principal sub-systems.
ClassificationClassification modelmodel showing how entitiesentities havehave
commoncommon characteristicscharacteristics.
Stimulus/responseStimulus/response model/Statemodel/State showing the
system’s reaction to eventssystem s reaction to events.

Recommended for you

Uml class-diagram
Uml class-diagramUml class-diagram
Uml class-diagram

This document provides an overview of UML class diagrams, including their purpose and essential elements. A UML class diagram visually describes the structure of a system by showing classes, attributes, operations, and relationships. Key elements include classes, associations, generalization, dependencies, and notes. The document also provides examples and tips for creating UML class diagrams.

OS - Process Concepts
OS - Process ConceptsOS - Process Concepts
OS - Process Concepts

Gives an overview about Process, PCB, Process States, Process Operations, Scheduling, Schedulers, Interprocess communication, shared memory and message passing systems

processpcbprocess control block
Uml in software engineering
Uml in software engineeringUml in software engineering
Uml in software engineering

UML (Unified Modeling Language) is a diagramming language used for object-oriented programming. It can be used to describe the organization, execution, use, and deployment of a program. Design patterns describe common solutions to programming problems and always use UML diagrams. This document focuses on class diagrams, which show classes, interfaces, and their relationships. It provides examples of how to depict classes with variables and methods, and relationships between classes like inheritance.

Context models-External perspectiveExternal perspective
Context models are used to illustrate the
operationaloperational contextcontext of a system - they show whatpp y y
lies outsideoutside thethe systemsystem boundariesboundaries.
The context of an ATM system
Security
system
Account
da tabase
Branch
accounting
system
Auto-teller
system
Branch
M i t
Usage
database
Branch
counter
system
Maintenance
system
Behavioural models
Behavioural models are used to describe the overall
behaviour of a system.
Two types of behavioural model are:
•• DataData processingprocessing modelsmodels that show how data•• DataData processingprocessing modelsmodels that show how data
is processed as it moves through the system;
•• StateState machinemachine modelsmodels that show the systems
response to events.
Process models
Data flow models may be used to show the
processes and the flowflow ofof informationinformation fromfrom oneonep
processprocess toto anotheranother..

Recommended for you

Object Oriented Design in Software Engineering SE12
Object Oriented Design in Software Engineering SE12Object Oriented Design in Software Engineering SE12
Object Oriented Design in Software Engineering SE12

The document discusses object-oriented design (OOD) and describes its key characteristics and processes. Specifically, it covers: 1) Objects communicate by message passing and are self-contained entities that encapsulate state and behavior. 2) The OOD process involves identifying objects and classes, defining their interfaces, relationships, and developing models of the system. 3) The Unified Modeling Language (UML) is used to describe OOD models including classes, objects, associations, and other relationships.

Unit 3(advanced state modeling & interaction meodelling)
Unit  3(advanced state modeling & interaction meodelling)Unit  3(advanced state modeling & interaction meodelling)
Unit 3(advanced state modeling & interaction meodelling)

The document provides an overview of advanced state modeling and interaction modeling techniques in UML. It discusses nested state diagrams and concurrent state diagrams for controlling complexity in state diagrams. It also covers activity models, use case models, and sequence models for interaction modeling. The relationships between class models, state models, and interaction models are also briefly described.

Flow oriented modeling
Flow oriented modelingFlow oriented modeling
Flow oriented modeling

Flow-oriented modeling represents how data objects are transformed as they move through a system. A data flow diagram (DFD) is the diagrammatic form used to depict this approach. DFDs show the flow of data through processes and external entities of a system using symbols like circles and arrows. They provide a unique view of how a system works by modeling the input, output, storage and processing of data from level to level.

Data-processing models
Data flow diagrams (DFDs) may be used to model
the system’s data processing.y p g
These show the processing steps as data flows
through a systemthrough a system.
DFDs are an intrinsic part of many analysis
methods.
Simple and intuitive notation that customers canp
understand.
Sh d t d i f d tShow end-to-end processing of data.
Equipment procurement process
Equipment
Checked
spec
Deli very
note
Deli very
note
Get cost
estima tes
Accept
deli very of
equipment
Check
delivered
items
Valida te
specification
Specify
equipment
requir ed
spec.
spec.
Or der
Installa tion
i t ti
Spec. +
supplier +
estima teEquipment
Choose
supplier
Place
equipment
order
Install
equipment
Find
suppliers
Supplier
da tabase
Or der
notifica tion
instructions
Order
details plus
estima te
Supplier list
Equipment
spec.
Accept
deli vered
Installa tion
acceptance
Ch k d d
p
blank or der
for m
equipment
Equipment
details
Check ed and
signed or der f orm
Equipment
da tabase
State machine models
These model the behaviour of the system inThese model the behaviour of the system in
response to external and internal events.
They show the system’s responses to stimuli (Stimuli are
events in the environment that influence behavior.)so are often used for
modelling real-time systems.
State machine models show systemsystem statesstates asState machine models show systemsystem statesstates as
nodesnodes and eventsevents as arcsarcs between these nodes.
When an e ent occ rs the s stem mo es from oneWhen an event occurs, the system moves from one
state to another.
State charts are an integral part of the UML and are
used to represent state machine models.
State charts
Allow the decomposition of a model into sub-models
A brief description of the actions is includedA brief description of the actions is included
following the ‘do’ in each state.
Can be complemented by tablestables describingdescribing the
states and the stimuli.

Recommended for you

Ch 11-component-level-design
Ch 11-component-level-designCh 11-component-level-design
Ch 11-component-level-design

This ppt covers the following topics Introduction The software component Designing class-based components Designing conventional components Thus it covers Component level design

software engineeringcomponent level design
Software quality
Software qualitySoftware quality
Software quality

The document discusses software quality and defines key aspects: - It explains the importance of software quality for users and developers. - Qualities like correctness, reliability, efficiency are defined. - Methods for measuring qualities like ISO 9126 standard are presented. - Quality is important throughout the software development process. - Both product quality and process quality need to be managed.

Function Oriented Design
Function Oriented DesignFunction Oriented Design
Function Oriented Design

This document discusses function-oriented software design. It explains that function-oriented design represents a system as a set of functions that transform inputs to outputs. The chapter objectives are to explain function-oriented design, introduce design notations, illustrate the design process with an example, and compare sequential, concurrent and object-oriented design strategies. Topics covered include data-flow design, structural decomposition, detailed design, and a comparison of design strategies.

function oriented design
Microwave oven state table description
State Description
Waiting The oven is waiting for input. The display shows the current time.g g p p y
Half power The oven power is set to 300 watts. The display shows ‘Half power’.
Full power The oven power is set to 600 watts. The display shows ‘Full power’.
Set time The cooking time is set to the user’s input value. The display shows the cooking
time selected and is updated as the time is set.
Disabled Oven operation is disabled for safety. Interior oven light is on. Display shows ‘Not
ready’.
Enabled Oven operation is enabled. Interior oven light is off. Display shows ‘Ready top g p y y
cook’.
Operation Oven in operation. Interior oven light is on. Display shows the timer countdown.
On completion of cooking, the buzzer is sounded for 5 seconds. Oven light is on.
Display shows ‘Cooking complete’ while buzzer is sounding.
Microwave oven model
Full power
Full
pow er
do: set power
= 600
do: operate
Full
power
Number
Set time
do: get number
Operation
Waiting
do: display
time
Timer
do: operate
oven
Half
power
Half
power
p
Door
Door
closed
Start
do: get number
exit: set time
CancelTimer
Enabled
Door
open
Door
closed
Door
openHalf power
do: set power
= 3 00
Waiting
do: display
time
do: display
'Ready'
Disabled
do: display
'Waiting'
Microwave oven stimuli
Stimulus Description
Half power The user has pressed the half power button
Full power The user has pressed the full power button
Timer The user has pressed one of the timer buttons
Number The user has pressed a numeric key
Door open The oven door switch is not closed
Door closed The oven door switch is closedDoor closed The oven door switch is closed
Start The user has pressed the start button
Cancel The user has pressed the cancel button
Microwave oven operation
C k
Checking
Time
Operation
Cook
do: run
generator
do: check
status
g
Turntable Emitter
OK
Timeout
Done
do: buzzer on
f 5
Alarm
do: display
Turntable
fault
Emitter
fault
Timeout
for 5 secs.
do: display
event
Door open Cancel
WaitingDisabled

Recommended for you

Use Case Diagram
Use Case DiagramUse Case Diagram
Use Case Diagram

The document discusses use case diagrams and use case descriptions for modeling system requirements. It covers drawing use case diagrams to show functional requirements and actors, common mistakes, and writing use case descriptions including basic, alternate, and exception flows of events. The document provides examples and exercises to help understand use cases for requirements modeling.

umlsoftwareengineering
Cohesion and coupling
Cohesion and couplingCohesion and coupling
Cohesion and coupling

Coupling refers to the interdependence between software modules. There are several types of coupling from loose to tight, with the tightest being content coupling where one module relies on the internal workings of another. Cohesion measures how strongly related the functionality within a module is, ranging from coincidental to functional cohesion which is the strongest. Tight coupling and low cohesion can make software harder to maintain and reuse modules.

data couplingobject oriented processsubclass coupling
Use case Diagram and Sequence Diagram
Use case Diagram and Sequence DiagramUse case Diagram and Sequence Diagram
Use case Diagram and Sequence Diagram

This presentation is about the use case and sequence diagram which are prepared for the UML of a system.

unified modelling languageobject oriented programming in c++
Semantic data models
Used to describe the logicallogical structurestructure ofof datadata
processedprocessed by the system.pp y y
An entity-relation-attribute model sets out the
entities in the system the relationships betweenentities in the system, the relationships between
these entities and the entity attributes
Widely used in database design. Can readily be
implemented using relational databases.
Library semantic model
Data dictionaries
Data dictionaries are listslists ofof allall of the names used
in the system models. Descriptions of the entities,y p ,
relationships and attributes are also included.
AdvantagesAdvantages
• Support name management and avoid duplication;
• Store of organisational knowledge linking analysis, design
and implementation;
Many CASE workbenches support data dictionaries.
Data dictionary entries
Name Description Type Date
Article Details of the published article that may be ordered by
people using LIBSYS.
Entity 30.12.2002
authors The names of the authors of the article who may be due Attribute 30 12 2002authors The names of the authors of the article who may be due
a share of the fee.
Attribute 30.12.2002
Buyer The person or organisation that orders a copy of the
article.
Entity 30.12.2002
fee-payable-
to
A 1:1 relationship between Article and the Copyright
Agency who should be paid the copyright fee.
Relation 29.12.2002
Address
(Buyer)
The address of the buyer. This is used to any paper
billing information that is required.
Attribute 31.12.2002
y g q

Recommended for you

Interface specification
Interface specificationInterface specification
Interface specification

All software systems must operate with existing systems that have already been implemented and installed in an environment.

interface specificationwhat is interface specificationtypes of interface specification
Architecture design in software engineering
Architecture design in software engineeringArchitecture design in software engineering
Architecture design in software engineering

The document discusses software architectural design. It defines architecture as the structure of a system's components, their relationships, and properties. An architectural design model is transferable across different systems. The architecture enables analysis of design requirements and consideration of alternatives early in development. It represents the system in an intellectually graspable way. Common architectural styles structure systems and their components in different ways, such as data-centered, data flow, and call-and-return styles.

Chapter 13 software testing strategies
Chapter 13 software testing strategiesChapter 13 software testing strategies
Chapter 13 software testing strategies

This ppt covers the following A strategic approach to testing Test strategies for conventional software Test strategies for object-oriented software Validation testing System testing The art of debugging

software engineeringsoftware testing
Object models
“Object", refers to a particular instance of a ClassClass
Object models describe the system in terms ofObject models describe the system in terms of
object classes and their associations.
An object class is an abstraction over a set of
objects with common attributes and the services
(operations) provided by each object.
Various object models may be producedj y p
• Inheritance models;
• Aggregation models;• Aggregation models;
• Interaction models.
Object models
Natural ways of reflecting the realreal--worldworld entitiesentities
manipulated by the systemp y y
Object class identification is recognised as a difficult
process requiring a deep understanding of theprocess requiring a deep understanding of the
application domain
Object classes reflecting domain entities are
reusablereusable acrossacross systemssystems
Inheritance models
Classes at the top of the hierarchy reflect the
common features of all classes.
Object classes inherit their attributes and services
from one or more super classesfrom one or more super-classes.
Object models and the UML
Th UML i t d d t ti d i d b thThe UML is a standard representation devised by the
developers of widely used object-oriented analysis and design
methodsmethods.
It has become an effective standard for object-oriented
modellingmodelling.
Notation
Object classes are rectanglesrectangles ith the name at the top• Object classes are rectanglesrectangles with the name at the top,
attributesattributes inin thethe middlemiddle sectionsection and operationsoperations inin thethe bottombottom
section;
• Relationships between object classes (knownknown asas associationsassociations)
are shown as lines linking objects;
• Inheritance is referred to as generalisation and is shown
‘upwards‘upwards’ rather than ‘downwards’downwards’ in a hierarchy.

Recommended for you

Object Modelling Technique " ooad "
Object Modelling Technique  " ooad "Object Modelling Technique  " ooad "
Object Modelling Technique " ooad "

Object Modeling Technique (OMT) is real world based modeling approach for software modeling and designing. It was developed basically as a method to develop object-oriented systems and to support object-oriented programming. It describes the static structure of the system. Object Modeling Technique is easy to draw and use. It is used in many applications like telecommunication, transportation, compilers etc. It is also used in many real world problems. OMT is one of the most popular object oriented development techniques used now-a-days. OMT was developed by James Rambaugh. Purpose of Object Modeling Technique: To test physical entity before construction of them. To make communication easier with the customers. To present information in an alternative way i.e. visualization. To reduce the complexity of software. To solve the real world problems. Object Modeling Technique’s Models: There are three main types of models that has been proposed by OMT. Object Model: Object Model encompasses the principles of abstraction, encapsulation, modularity, hierarchy, typing, concurrency and persistence. Object Model basically emphasizes on the object and class. Main concepts related with Object Model are classes and their association with attributes. Predefined relationships in object model are aggregation and generalization (multiple inheritance). Dynamic Model: Dynamic Model involves states, events and state diagram (transition diagram) on the model. Main concepts related with Dynamic Model are states, transition between states and events to trigger the transitions. Predefined relationships in object model are aggregation (concurrency) and generalization. Functional Model: Functional Model focuses on the how data is flowing, where data is stored and different processes. Main concepts involved in Functional Model are data, data flow, data store, process and actors. Functional Model in OMT describes the whole processes and actions with the help of data flow diagram (DFD). Phases of Object Modeling Technique: OMT has the following phases: Analysis: This the first phase of the object modeling technique. This phase involves the preparation of precise and correct modelling of the real world problems. Analysis phase starts with setting a goal i.e. finding the problem statement. Problem statement is further divided into above discussed three models i.e. object, dynamic and functional model. System Design: This is the second phase of the object modeling technique and it comes after the analysis phase. It determines all system architecture, concurrent tasks and data storage. High level architecture of the system is designed during this phase. FOR MORE INFORMATION CLICK ON THE LINK BELOW : https://uii.io/programming

object modelling techniqueooadobject orinted programming
Distributed Systems Real Life Applications
Distributed Systems Real Life ApplicationsDistributed Systems Real Life Applications
Distributed Systems Real Life Applications

This document discusses distributed systems applications in real life, including three key areas: distributed rendering in computer graphics, peer-to-peer networks, and massively multiplayer online gaming. It describes how distributed rendering parallelizes graphics processing across multiple computers. Peer-to-peer networks are defined as decentralized networks where nodes act as both suppliers and consumers of resources. Examples of peer-to-peer applications include file sharing and content delivery networks. The document also outlines the challenges of designing multiplayer online games using a distributed architecture rather than a traditional client-server model.

distributed systemscomputer sciencecloud computing
8 system models
8 system models8 system models
8 system models

The document discusses different types of system models used in requirements engineering including context models, behavioral models, data models, and object models. It describes modeling the system's context, data processing, behavior in response to events, logical data structure, and objects. The document also introduces the Unified Modeling Language (UML) and how computer-aided software engineering (CASE) workbenches support system modeling.

Library class hierarchy
User class hierarchy
Multiple inheritance
Rather than inheriting the attributes and services
from a single parent class, a system which supportsg p , y pp
multiple inheritance allows object classes to inherit
fromfrom severalseveral supersuper--classesclassesfromfrom severalseveral supersuper--classesclasses..
This can lead to semantic conflicts where
attributes/services with the same name in different
super-classes have different semantics.
Multiple inheritance makes class hierarchy
reorganisation more complex.reorganisation more complex.
Multiple inheritance

Recommended for you

8 system models (1)
8 system models (1)8 system models (1)
8 system models (1)

The document discusses different types of system models used in requirements engineering including context models, behavioral models, data models, and object models. It describes modeling the system's behavior using data flow diagrams and state machine diagrams. The document also introduces the Unified Modeling Language (UML) and how computer-aided software engineering (CASE) tools can support system modeling.

Unit 3 system models
Unit 3 system modelsUnit 3 system models
Unit 3 system models

The document discusses system modeling as part of the requirements engineering process. It describes different types of models used to represent systems, including context models, behavioral models, data models, and object models. Specific modeling notations are introduced, such as data flow diagrams, state machines, and entity-relationship diagrams. Examples are provided to illustrate modeling concepts for systems like an ATM, order processing, and a microwave oven. The goal of system modeling is to help analysts understand system functionality from different perspectives to communicate requirements.

system modelssoftware engineering
Software engineering rogers pressman chapter 7
Software engineering rogers pressman chapter 7Software engineering rogers pressman chapter 7
Software engineering rogers pressman chapter 7

The document discusses various modeling techniques used in requirements analysis for web applications (WebApps), including: 1) Content modeling to identify and describe all content objects and their relationships. 2) Interaction modeling using use cases, sequence diagrams, state diagrams, and prototypes to describe how users interact. 3) Functional modeling to define all necessary operations and processing functions implied by usage scenarios. The techniques help analysts understand WebApp requirements by modeling key elements like content, interactions, and functions.

Object behaviour modelling
Sequence diagrams (or collaboration diagrams) in
the UML are used to model interaction between
objects.
Issue of electronic items
Structured methods
Methods define a set of models, a process for
deriving these models and rules and guidelines thatg g
should apply to the models.
CASE tools support system modelling as part of aCASE tools support system modelling as part of a
structured method.
Method weaknesses
They do not model non-functional system
requirements.q
They do not usually include information about
whether a method is appropriate for a givenwhether a method is appropriate for a given
problem.
The may produce too much documentation.
The system models are sometimes too detailed andy
difficult for users to understand.

Recommended for you

SECh78
SECh78SECh78
SECh78

System modeling techniques are used during requirements engineering and design to represent different perspectives of a system. Context models show the system and its environment, while process models illustrate system processes. Behavioral models include data flow diagrams for data processing and state machine diagrams for event-driven behavior. Semantic data models describe logical data structures. Object models represent system entities and relationships. CASE tools support creating and analyzing various system models during development. Prototyping, through evolutionary or throw-away approaches, helps validate requirements by allowing users to interact with early versions of the system. Rapid prototyping techniques include visual programming and reusing components.

Object oriented methodologies
Object oriented methodologiesObject oriented methodologies
Object oriented methodologies

Rumbaugh's Object Modeling Technique (OMT) is an object-oriented analysis and design methodology. It uses three main modeling approaches: object models, dynamic models, and functional models. The object model defines the structure of objects in the system through class diagrams. The dynamic model describes object behavior over time using state diagrams and event flow diagrams. The functional model represents system processes and data flow using data flow diagrams.

Ch08
Ch08Ch08
Ch08

The document discusses various techniques for modeling software requirements including: 1) Entity-relationship diagrams (ERDs) which model data objects and their relationships to understand the data domain. 2) Use case modeling which describes scenarios of how external actors will use the system through use cases and diagrams. 3) Flow-oriented modeling using data flow diagrams (DFDs) which represent how data objects are transformed as they move through the system.

CASE workbenches
A coherent set of tools that is designed to support
related software process activities such as analysis,p y ,
design or testing.
Analysis and design workbenches support systemAnalysis and design workbenches support system
modelling during both requirements engineering and
system design.
These workbenches may support a specific design
method or may provide support for a creating
several different types of system modelseveral different types of system model.
An analysis and design workbench
Analysis workbench components
Diagram editors
Model analysis and checking toolsModel analysis and checking tools
Repository and associated query language
Data dictionary
Report definition and generation toolsp g
Forms definition tools
I t/ t t l tImport/export translators
Code generation tools
Project managementProject managementProject managementProject management

Recommended for you

Ch08
Ch08Ch08
Ch08

The document discusses various techniques for modeling software requirements including: 1) Entity-relationship diagrams (ERDs) which model data objects and their relationships to understand the data domain. 2) Use case modeling which describes scenarios of how external actors will use the system through use cases and diagrams. 3) Object-oriented modeling which defines classes, objects, attributes, methods, encapsulation, and inheritance. 4) Flow modeling using data flow diagrams (DFDs) which represent how data objects flow through the system as they are transformed.

Lab 3 Introduction to the UML - how to create a use case diagram
Lab 3 Introduction to the UML - how to create a use case diagramLab 3 Introduction to the UML - how to create a use case diagram
Lab 3 Introduction to the UML - how to create a use case diagram

The document discusses use case diagrams and use case modeling. It provides an overview of use case diagrams, including their purpose and components. Key points include: - Use case diagrams show interactions between actors and the system/software being modeled through use cases. They are used early in development to capture requirements and later to specify system behavior. - Components of a use case diagram include actors, use cases, and relationships between them like generalization, include, and extend. Actors represent roles that interact with the system while use cases represent system functions/processes. - Examples of a use case diagram for a vehicle sales system are provided to demonstrate how actors, use cases, and relationships can be modeled visually. Guidance is

software engineeringuml diagramuse case diagram
System Modelling
System ModellingSystem Modelling
System Modelling

The document discusses different types of system models used in requirements engineering, including context models, behavioral models, data models, and object models. It provides examples of each type of model, such as a data flow diagram of an order processing system and a state diagram for a microwave oven. The objectives are to explain why system context should be modeled, describe different modeling notations and perspectives, and discuss how computer-aided software engineering tools can support system modeling.

Topics covered
Project Management activities
Project planningProject planning
Project scheduling
Risk management
Software project management
Concerned with activitiesactivities involved in ensuring
that software is delivered onon timetime and onon
scheduleschedule and in accordance with the
requirements of the organisations developingrequirements of the organisations developing
and procuring the software.
Project management is needed because software
development is always subject to budget and
schedule constraints that are set by the
organisation developing the software.g p g
Software Project Management activities
Proposal writing.
Project planning and schedulingProject planning and scheduling.
Project costing.
Project monitoring and reviews.
Personnel selection and evaluation.
Report writing and presentations.
Project staffing
May not be possible to appoint the ideal people to work
on a project
• Project budget may not allow for the use of highly-paid
staff;;
• Staff with the appropriate experience may not be
available;available;
• An organisation may wish to develop employee skills
on a software projecton a software project.
Managers have to work within these constraints
i ll h th h t f t i d t ffespecially when there are shortages of trained staff.

Recommended for you

Software Engineering - Ch8
Software Engineering - Ch8Software Engineering - Ch8
Software Engineering - Ch8

The document discusses different types of system models used in requirements engineering, including context models, behavioral models, data models, and object models. It provides examples of each type of model, such as a data flow diagram of an order processing system and a state diagram for a microwave oven. The objectives are to explain why system context should be modeled, describe different modeling notations and perspectives, and discuss how computer-aided software engineering tools can support system modeling.

Ch8
Ch8Ch8
Ch8

The document discusses system modeling and different types of models used during requirements engineering including context models, data flow diagrams, state machine models, semantic data models, object models, and sequence diagrams. It also introduces the Unified Modeling Language (UML) notation and explains how analysis workbenches can support system modeling.

SE - System Models
SE - System ModelsSE - System Models
SE - System Models

The document discusses system modeling and different types of models used during requirements engineering including context models, data flow diagrams, state machine models, semantic data models, object models, and sequence diagrams. It also introduces the Unified Modeling Language (UML) notation and explains how analysis workbenches can support system modeling.

Project planning
Probably the most time-consuming project
management activity.g y
Continuous activity from initial concept through
to system delivery Plans must be regularly revisedto system delivery. Plans must be regularly revised
as new information becomes available.
Various different types of plan may be developed to
support the main software project plan that is
concerned with schedule and budget.
Types of project plan
Plan Description
Quality plan Describes the quality procedures and standards that will
b d i jbe used in a project. .
Validation plan Describes the approach, resources and schedule used for
system validation.
Configuration
management plan
Describes the configuration management procedures and
structures to be used.
Maintenance plan Predicts the maintenance requirements of the system,
maintenance costs and effort required.
Staff development Describes how the skills and experience of the projectp
plan.
p p j
team members will be developed.
Project planning process
E t bli h th j t t i tEstablish the project constraints
Make initial assessments of the project parameters
Define project milestones and deliverables
while project has not been completed or cancelled loop
Draw up project schedule
Initiate activities according to scheduleg
Wait ( for a while )
Review project progress
Revise estimates of project parametersRevise estimates of project parameters
Update the project schedule
Re-negotiate project constraints and deliverables
if ( problems arise ) then
Initiate technical review and possible revision
end if
end loop
The project plan
The project plan sets out:
• The resources available to the project;The resources available to the project;
• The work breakdown;
• A schedule for the work.

Recommended for you

Week 5
Week 5Week 5
Week 5

System models abstractly describe systems being analyzed and are used to communicate with customers. Different models show the system from external, behavioral, and structural perspectives. Common system models include context models depicting system boundaries, data flow diagrams modeling data processing, state machine models representing system states and transitions, and object models describing the system in terms of object classes and relationships. The Unified Modeling Language provides standard notations for object-oriented modeling.

OBJECT ORIENTED ANALYSIS FOR EASY UNDERSTANDING .ppt
OBJECT ORIENTED ANALYSIS FOR EASY UNDERSTANDING .pptOBJECT ORIENTED ANALYSIS FOR EASY UNDERSTANDING .ppt
OBJECT ORIENTED ANALYSIS FOR EASY UNDERSTANDING .ppt

ITS JUST ABOUT

ooad
Modeling System Requirements
Modeling System RequirementsModeling System Requirements
Modeling System Requirements

It's all about the modeling system requirements, how we can gather the requirements for modeling a system.

modeling system
Project plan structure
Introduction.
Project organisationProject organisation.
Risk analysis.
Hardware and software resource requirements.
Work breakdown.
Project schedule.
M it i d ti h iMonitoring and reporting mechanisms.
Activity organization
Activities in a project should be organised to
produce tangible outputs for management to judgep g p g j g
progress.
Milestones are the end point of a process activityMilestones are the end-point of a process activity.
Deliverables are project results delivered to
customers.
The waterfall process allows for the straightforwardp g
definition of progress milestones.
Project scheduling
Split project into tasks and estimate time and
resources required to complete each task.q p
Organize tasks concurrently to make optimal
use of workforceuse of workforce.
Minimize task dependencies to avoid delays
caused by one task waiting for another to complete.
Dependent on project managers intuition andp p j g
experience.
The project scheduling process

Recommended for you

software_engg-chap-03.ppt
software_engg-chap-03.pptsoftware_engg-chap-03.ppt
software_engg-chap-03.ppt

This chapter discusses analysis and design modeling. It describes various analysis modeling approaches like structured analysis and object-oriented analysis. Structured analysis uses diagrams like data flow diagrams, entity-relationship diagrams, and state transition diagrams. Object-oriented analysis focuses on identifying classes, objects, attributes, and relationships. The chapter also covers data modeling concepts, flow-oriented modeling using data flow diagrams, scenario-based modeling with use cases, and developing behavioral models to represent system behavior. Analysis modeling creates representations of the system to understand requirements and lay the foundation for design.

ste
Ch07
Ch07Ch07
Ch07

The document discusses the key activities in requirements engineering including inception, elicitation, analysis modeling, negotiation and validation. It describes techniques used in each stage such as use cases, class and state diagrams to model requirements. Quality function deployment and patterns are also discussed as tools to help define and organize requirements.

Ch07
Ch07Ch07
Ch07

The document discusses the key activities in requirements engineering including inception, elicitation, analysis modeling, negotiation and validation. It describes techniques used in each stage such as use cases, class and state diagrams to model requirements. Quality function deployment and patterns are also discussed as tools to help define and organize requirements.

Scheduling problems
Estimating the difficulty of problems and hence the
cost of developing a solution is hard.p g
Productivity is not proportional to the number of
people working on a taskpeople working on a task.
Adding people to a late project makes it later
because of communication overheads.
The unexpected always happens. Always allowp y pp y
contingency in planning.
Bar charts and activity networks
Graphical notations used to illustrate the project
schedule.
Show project breakdown into tasks. Tasks should
not be too small They should take about a week ornot be too small. They should take about a week or
two.
Activity charts show task dependencies and the the
critical path.
Bar charts show schedule against calendar time.
Task durations and dependencies
Activity Duration (days) Dependencies
T1 8
2 1T2 15
T3 15 T1 (M1)
T4 10
T5 10 T2, T4 (M2)
T6 5 T1, T2 (M3)
T7 20 T1 (M1)
T8 25 T4 (M5)
T9 15 T3, T6 (M4)
T10 15 T5, T7 (M7)
T11 7 T9 (M6)
T12 10 T11 (M8)
Activity network

Recommended for you

data science with python_UNIT 2_full notes.pdf
data science with python_UNIT 2_full notes.pdfdata science with python_UNIT 2_full notes.pdf
data science with python_UNIT 2_full notes.pdf

DF

aiml
ADBMS ALL 2069-73 [CSITauthority.blogspot.com].pdf
ADBMS ALL 2069-73 [CSITauthority.blogspot.com].pdfADBMS ALL 2069-73 [CSITauthority.blogspot.com].pdf
ADBMS ALL 2069-73 [CSITauthority.blogspot.com].pdf

The document contains questions from past exams for an Advanced Database Management Systems course at Tribhuwan University Institute of Science and Technology in Nepal. The questions cover a range of database topics including data mining, object-relational databases, temporal and mobile databases, XML, data warehousing, and distributed databases. Students are instructed to answer all questions in their own words drawing from their knowledge of database concepts and systems.

adbms all csitauthorit
Syllabus.pdf
Syllabus.pdfSyllabus.pdf
Syllabus.pdf

The document provides details about an advanced database management systems course including its objectives, course contents, and requirements. The course aims to study advanced database techniques beyond fundamental concepts. It contains 5 units covering relational and object-oriented database models, emerging technologies like data warehousing and data mining, and database standards. Students must complete a project using a commercial object-oriented database management system and model-view-controller framework.

adbms
Activity timeline- Gantt Chart
Staff allocation
Risk management
Risk management is concerned with identifying risks and
drawing up plans to minimise their effect on a project.
A risk is a probability that some adverse circumstance will
occur
• Project risks affect schedule or resources;
• Product risks affect the quality or performance of the
software being developed;
• Business risks affect the organisation developing or
procuring the software.
Software risks
Risk Affects Description
Staff turnover Project Experienced staff will leave the project before it is finished.
Management change Project There will be a change of organisational management with
different priorities.
Hardware unavailability Project Hardware that is essential for the project will not be
delivered on schedule.
Requirements change Project and
product
There will be a larger number of changes to the
requirements than anticipated.
Specification delays Project and
product
Specifications of essential interfaces are not available on
schedule
Size underestimate Project and
product
The size of the system has been underestimated.
CASE tool under-
performance
Product CASE tools which support the project do not perform as
anticipated
Technology change Business The underlying technology on which the system is built is
superseded by new technology.
Product competition Business A competitive product is marketed before the system is
completed.

Recommended for you

Network entites
Network entitesNetwork entites
Network entites

explaining about basic networking devices, protocol, dns, network entities , dns , protocol explaing in detail

networking entitieslayered architecturenetworking devices
Transport layer
Transport layerTransport layer
Transport layer

here discussed about each topic of network layer like congestion control mechanism , error control , flow, tcp , udp, etc

transport layercongestion control algorithmflow
Internet service provider and network backbone
Internet service provider and network backboneInternet service provider and network backbone
Internet service provider and network backbone

Nepal has few internet service providers. A backbone interconnects different networks to exchange data between them. It can connect local area networks within offices or campuses. When multiple local area networks interconnect over a large area, it forms a wide area network or metropolitan area network for an entire city.

network backboneinternet service providerisp
The risk management process
The risk management process
Risk identification
• Identify project, product and business risks;
Risk analysis
• Assess the likelihood and consequences of these risks;
Risk planning
• Draw up plans to avoid or minimise the effects of the risk;p p ;
Risk monitoring
• Monitor the risks throughout the project;Monitor the risks throughout the project;
Risk identification
Technology risks.
People risksPeople risks.
Organisational risks.
Requirements risks.
Estimation risks.
Risks and risk types
Risk type Possible risks
Technology The database used in the system cannot process as many transactions per second
as expected.as expected.
Software components that should be reused contain defects that limit their
functionality.
People It is impossible to recruit staff with the skills required.
Key staff are ill and unavailable at critical times.
i d i i f ff i il blRequired training for staff is not available.
Organisational The organisation is restructured so that different management are responsible for
the project.
Organisational financial problems force reductions in the project budget.
Tools The code generated by CASE tools is inefficient.
CASE tools cannot be integrated.
Requirements Changes to requirements that require major design rework are proposed.
Customers fail to understand the impact of requirements changes.
Estimation The time required to develop the software is underestimated.
The rate of defect repair is underestimated.
The size of the software is underestimated.

Recommended for you

Core java complete ppt(note)
Core java  complete  ppt(note)Core java  complete  ppt(note)
Core java complete ppt(note)

it has a complete discussion on core topic of java . it gives all basic knowledge about core java in very easy and simple manner .

java introductioninheritancepackage
Unit 6- Development Evolution model
Unit 6- Development Evolution model Unit 6- Development Evolution model
Unit 6- Development Evolution model

The document discusses topics related to rapid software development and evolution, including agile methods, extreme programming, rapid application development, and software prototyping. It provides details on characteristics of rapid application development processes like concurrent specification, design, and implementation. Iterative development approaches are covered along with advantages and challenges. Specific agile methods like extreme programming, with practices like test-driven development and pair programming, are also summarized.

development evolution in software developmentdevelopment evolution
Unit 5- Architectural Design in software engineering
Unit 5- Architectural Design in software engineering Unit 5- Architectural Design in software engineering
Unit 5- Architectural Design in software engineering

This document provides an overview of architectural design for software systems. It discusses topics like system organization, decomposition styles, and control styles. The key aspects covered are: 1. Architectural design identifies the subsystems, framework for control/communication, and is described in a software architecture. 2. Common decisions include system structure, distribution, styles, decomposition, and control strategy. Models are used to document the design. 3. Organization styles include repository (shared data), client-server (shared services), and layered (abstract machines). Decomposition can be through objects or pipelines. Control can be centralized or event-based.

software designing toolarchitectural design tool in swarchitectural design toll for software development
Risk analysis
Assess probability and seriousness of each risk.
Probability may be very low low moderate high orProbability may be very low, low, moderate, high or
very high.
Risk effects might be catastrophic, serious, tolerable
or insignificant.
Risk analysis (i)
Risk Probability Effects
Organisational financial problems force reductions in Low CatastrophicOrganisational financial problems force reductions in
the project budget.
Low Catastrophic
It is impossible to recruit staff with the skills required
for the project.
High Catastrophic
Key staff are ill at critical times in the project. Moderate Serious
Software components that should be reused contain
defects which limit their functionality.
Moderate Serious
Changes to requirements that require major design
rework are proposed.
Moderate Serious
The organisation is restructured so that different
ibl f h j
High Serious
management are responsible for the project.
Risk analysis (ii)
Risk Probability Effects
The database used in the system cannot process as Moderate Serious
many transactions per second as expec ted.
The time required to develop the software is
underestimated.
High Serious
CASE tools cannot be integrated High TolerableCASE tools cannot be integrated. High Tolerable
Customers fail to understand the impact of
requirements changes.
Moderate Tolerable
Required training for staff is not available. Moderate Tolerableq g
The rate of defect repair is underestimated. Moderate Tolerable
The size of the software is underestimated. High Tolerable
The code generated by CASE tools is inefficient. Moderate Insignificantg y g
Risk planning
Consider each risk and develop a strategy to manage that risk.
Avoidance strategies
• The probability that the risk will arise is reduced;
Minimisation strategies
• The impact of the risk on the project or product will be
reduced;
Contingency plans
• If the risk arises, contingency plans are plans to deal with, g y p p
that risk;

Recommended for you

Unit 3- requirements for software development
Unit 3-  requirements for software  development Unit 3-  requirements for software  development
Unit 3- requirements for software development

The document discusses software requirements including functional and non-functional requirements, user requirements, and system requirements. It covers topics like requirements engineering, the importance of requirements, problems that can arise from imprecise requirements, and how to classify and write good requirements. Functional requirements state what services the system should provide, how it should react to inputs, and how it should behave. Non-functional requirements constrain the system's operation and development. Good requirements are complete, consistent, understandable, and unambiguous.

software requirementsrequirements of software development
Unit 2-software development process notes
Unit 2-software development process notes Unit 2-software development process notes
Unit 2-software development process notes

Critical systems must be dependable to avoid catastrophic failures. Dependability encompasses availability, reliability, safety, and security. Availability refers to a system's ability to deliver services when requested, while reliability means delivering services correctly. Safety ensures excessive errors do not occur, as even one failure could endanger life. Development methods for critical systems aim to formally prove correctness due to high failure costs. An insulin pump example demonstrated how software controls a medical device, requiring stringent dependability to safely regulate insulin doses.

different software developemnt phasessoftware process
Unit 1-overview of software engineering
Unit 1-overview of software engineering Unit 1-overview of software engineering
Unit 1-overview of software engineering

This document discusses key concepts in software engineering. It begins with definitions of software and software engineering. It then covers differences between software engineering and computer science/system engineering. Software processes and models are explained. Costs, methods, CASE tools, attributes of good software and challenges in the field are summarized. The document also discusses professional and ethical responsibilities of software engineers, including issues like confidentiality, competence, intellectual property and computer misuse. Finally, it outlines the eight principles of the ACM/IEEE Code of Ethics for software engineers.

software engineeringfirst unit software engineering notesoftware engineering introduction
Risk management strategies (i)
Risk Strategy
Organisational
financial problems
Prepare a briefing document for senior management
showing how th e project is making a very important
contribution to the goals of the business.
Recruitment
problems
Alert customer of potential difficulties and the
possibility of delays, investigate buying-in
components.
Staff illness Reorganise team so that there is more overlap of work
and people therefore understand each other’s jobs.
Defective Replace potentially defective components with bought-Defective
components
Replace potentially defective components with bought-
in components of known reliability.
Risk management strategies (ii)
Risk Strategy
Requirements
changes
Derive traceability information to assess requirements
change impact, maximise information hiding in the
design.
O i ti l P b i fi d t f i tOrganisational
restructuring
Prepare a briefing document for senior management
showing how th e project is making a very important
contribution to the goals of the business.
Database Investigate the possibility of buying a higherDatabase
performance
Investigate the possibility of buying a higher-
performance database.
Underestimated
development time
Investigate buying in components, investigate use of a
program generatordevelopment time program generator
Risk monitoring
Assess each identified risks regularly to decide
whether or not it is becoming less or more probable.g p
Also assess whether the effects of the risk have
changedchanged.
Each key risk should be discussed at management
progress meetings.
Risk indicators
Risk type Potential indicators
T h l L d li f h d f dTechnology Late delivery of hardware or support software, many reported
technology problems
People Poor staff morale, poor relationships amongst team member,
job availabilityjob availability
Organisational Organisational gossip, lack of action by senior management
Tools Reluctance by team members to use tools, complaints about
CASE tools demands for higher powered workstationsCASE tools, demands for higher-powered workstations
Requirements Many requirements change requests, customer complaints
Estimation Failure to meet agreed schedule, failure to clear reported
d f tdefects

Recommended for you

Chapter1 computer introduction note
Chapter1  computer introduction note Chapter1  computer introduction note
Chapter1 computer introduction note

The document discusses various topics related to computer networks including uses of networks in business, home, mobile applications and social issues. It also discusses different types of network hardware including personal area networks, local area networks, metropolitan area networks, wide area networks and the internet. Example networks covered include the ARPANET, NSFNET, the internet, wireless LANs, 3G mobile phone networks, and RFID and sensor networks.

internetcomputer networktypes of network
computer network fundamental note
computer network fundamental note computer network fundamental note
computer network fundamental note

The document discusses computer networks and their components. It describes end systems like clients and servers that run applications. Clients request services from servers. The network core uses either circuit switching or packet switching to move data through links and switches. Packet switched networks can be datagram networks, like the Internet, which forwards packets based on destination address, or virtual circuit networks which use preplanned routes. The document also covers network access technologies like dial-up connections and DSL internet access.

network edgeend networknetwork core
I have a dream
I have a dreamI have a dream
I have a dream

story about martin Luther and Abraham Lincoln . it is also give knowledge first time how to make the presentation .

i have dreamsmartin lutherabraham lincoln
Chapter Review Questions
1.Explain different types of system model in details.
2.Define Context model. Draw a context model for library system.
3.Explain semantic data model with suitable example.
4.Describe the state machine model with example.
5 W it h t t5. Write short note on
a. Ethnography b.Use case c.Sequence diagram d.CASE workbench
e. Risk planning f. Data dictionaryp g y
6. Describe the software project management activities in details.
7. Explain the importance of planning and scheduling in software project
management.
8. Discuss the importance of risk management in software project. Explain
various risk management strategiesvarious risk management strategies.

More Related Content

What's hot

Use Case Diagram
Use Case DiagramUse Case Diagram
Use Case Diagram
Kumar
 
Program security
Program securityProgram security
Program security
G Prachi
 
Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9
koolkampus
 
Uml class-diagram
Uml class-diagramUml class-diagram
Uml class-diagram
ASHOK KUMAR PALAKI
 
OS - Process Concepts
OS - Process ConceptsOS - Process Concepts
OS - Process Concepts
Mukesh Chinta
 
Uml in software engineering
Uml in software engineeringUml in software engineering
Uml in software engineering
Mubashir Jutt
 
Object Oriented Design in Software Engineering SE12
Object Oriented Design in Software Engineering SE12Object Oriented Design in Software Engineering SE12
Object Oriented Design in Software Engineering SE12
koolkampus
 
Unit 3(advanced state modeling & interaction meodelling)
Unit  3(advanced state modeling & interaction meodelling)Unit  3(advanced state modeling & interaction meodelling)
Unit 3(advanced state modeling & interaction meodelling)
Manoj Reddy
 
Flow oriented modeling
Flow oriented modelingFlow oriented modeling
Flow oriented modeling
ramyaaswin
 
Ch 11-component-level-design
Ch 11-component-level-designCh 11-component-level-design
Ch 11-component-level-design
SHREEHARI WADAWADAGI
 
Software quality
Software qualitySoftware quality
Software quality
Sara Mehmood
 
Function Oriented Design
Function Oriented DesignFunction Oriented Design
Function Oriented Design
Sharath g
 
Use Case Diagram
Use Case DiagramUse Case Diagram
Use Case Diagram
Ashesh R
 
Cohesion and coupling
Cohesion and couplingCohesion and coupling
Cohesion and coupling
Aprajita (Abbey) Singh
 
Use case Diagram and Sequence Diagram
Use case Diagram and Sequence DiagramUse case Diagram and Sequence Diagram
Use case Diagram and Sequence Diagram
Nikhil Pandit
 
Interface specification
Interface specificationInterface specification
Interface specification
maliksiddique1
 
Architecture design in software engineering
Architecture design in software engineeringArchitecture design in software engineering
Architecture design in software engineering
Preeti Mishra
 
Chapter 13 software testing strategies
Chapter 13 software testing strategiesChapter 13 software testing strategies
Chapter 13 software testing strategies
SHREEHARI WADAWADAGI
 
Object Modelling Technique " ooad "
Object Modelling Technique  " ooad "Object Modelling Technique  " ooad "
Object Modelling Technique " ooad "
AchrafJbr
 
Distributed Systems Real Life Applications
Distributed Systems Real Life ApplicationsDistributed Systems Real Life Applications
Distributed Systems Real Life Applications
Aman Srivastava
 

What's hot (20)

Use Case Diagram
Use Case DiagramUse Case Diagram
Use Case Diagram
 
Program security
Program securityProgram security
Program security
 
Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9
 
Uml class-diagram
Uml class-diagramUml class-diagram
Uml class-diagram
 
OS - Process Concepts
OS - Process ConceptsOS - Process Concepts
OS - Process Concepts
 
Uml in software engineering
Uml in software engineeringUml in software engineering
Uml in software engineering
 
Object Oriented Design in Software Engineering SE12
Object Oriented Design in Software Engineering SE12Object Oriented Design in Software Engineering SE12
Object Oriented Design in Software Engineering SE12
 
Unit 3(advanced state modeling & interaction meodelling)
Unit  3(advanced state modeling & interaction meodelling)Unit  3(advanced state modeling & interaction meodelling)
Unit 3(advanced state modeling & interaction meodelling)
 
Flow oriented modeling
Flow oriented modelingFlow oriented modeling
Flow oriented modeling
 
Ch 11-component-level-design
Ch 11-component-level-designCh 11-component-level-design
Ch 11-component-level-design
 
Software quality
Software qualitySoftware quality
Software quality
 
Function Oriented Design
Function Oriented DesignFunction Oriented Design
Function Oriented Design
 
Use Case Diagram
Use Case DiagramUse Case Diagram
Use Case Diagram
 
Cohesion and coupling
Cohesion and couplingCohesion and coupling
Cohesion and coupling
 
Use case Diagram and Sequence Diagram
Use case Diagram and Sequence DiagramUse case Diagram and Sequence Diagram
Use case Diagram and Sequence Diagram
 
Interface specification
Interface specificationInterface specification
Interface specification
 
Architecture design in software engineering
Architecture design in software engineeringArchitecture design in software engineering
Architecture design in software engineering
 
Chapter 13 software testing strategies
Chapter 13 software testing strategiesChapter 13 software testing strategies
Chapter 13 software testing strategies
 
Object Modelling Technique " ooad "
Object Modelling Technique  " ooad "Object Modelling Technique  " ooad "
Object Modelling Technique " ooad "
 
Distributed Systems Real Life Applications
Distributed Systems Real Life ApplicationsDistributed Systems Real Life Applications
Distributed Systems Real Life Applications
 

Similar to Unit 4- Software Engineering System Model Notes

8 system models
8 system models8 system models
8 system models
Ayesha Bhatti
 
8 system models (1)
8 system models (1)8 system models (1)
8 system models (1)
Ayesha Bhatti
 
Unit 3 system models
Unit 3 system modelsUnit 3 system models
Unit 3 system models
Azhar Shaik
 
Software engineering rogers pressman chapter 7
Software engineering rogers pressman chapter 7Software engineering rogers pressman chapter 7
Software engineering rogers pressman chapter 7
mohammad hossein Jalili
 
SECh78
SECh78SECh78
Object oriented methodologies
Object oriented methodologiesObject oriented methodologies
Object oriented methodologies
naina-rani
 
Ch08
Ch08Ch08
Ch08
Ch08Ch08
Lab 3 Introduction to the UML - how to create a use case diagram
Lab 3 Introduction to the UML - how to create a use case diagramLab 3 Introduction to the UML - how to create a use case diagram
Lab 3 Introduction to the UML - how to create a use case diagram
Farah Ahmed
 
System Modelling
System ModellingSystem Modelling
System Modelling
IanBriton
 
Software Engineering - Ch8
Software Engineering - Ch8Software Engineering - Ch8
Software Engineering - Ch8
Siddharth Ayer
 
Ch8
Ch8Ch8
SE - System Models
SE - System ModelsSE - System Models
SE - System Models
Jomel Penalba
 
Week 5
Week 5Week 5
OBJECT ORIENTED ANALYSIS FOR EASY UNDERSTANDING .ppt
OBJECT ORIENTED ANALYSIS FOR EASY UNDERSTANDING .pptOBJECT ORIENTED ANALYSIS FOR EASY UNDERSTANDING .ppt
OBJECT ORIENTED ANALYSIS FOR EASY UNDERSTANDING .ppt
AshishSaraswat30
 
Modeling System Requirements
Modeling System RequirementsModeling System Requirements
Modeling System Requirements
Asjad Raza
 
software_engg-chap-03.ppt
software_engg-chap-03.pptsoftware_engg-chap-03.ppt
software_engg-chap-03.ppt
064ChetanWani
 
Ch07
Ch07Ch07
Ch07
Ch07Ch07
data science with python_UNIT 2_full notes.pdf
data science with python_UNIT 2_full notes.pdfdata science with python_UNIT 2_full notes.pdf
data science with python_UNIT 2_full notes.pdf
mukeshgarg02
 

Similar to Unit 4- Software Engineering System Model Notes (20)

8 system models
8 system models8 system models
8 system models
 
8 system models (1)
8 system models (1)8 system models (1)
8 system models (1)
 
Unit 3 system models
Unit 3 system modelsUnit 3 system models
Unit 3 system models
 
Software engineering rogers pressman chapter 7
Software engineering rogers pressman chapter 7Software engineering rogers pressman chapter 7
Software engineering rogers pressman chapter 7
 
SECh78
SECh78SECh78
SECh78
 
Object oriented methodologies
Object oriented methodologiesObject oriented methodologies
Object oriented methodologies
 
Ch08
Ch08Ch08
Ch08
 
Ch08
Ch08Ch08
Ch08
 
Lab 3 Introduction to the UML - how to create a use case diagram
Lab 3 Introduction to the UML - how to create a use case diagramLab 3 Introduction to the UML - how to create a use case diagram
Lab 3 Introduction to the UML - how to create a use case diagram
 
System Modelling
System ModellingSystem Modelling
System Modelling
 
Software Engineering - Ch8
Software Engineering - Ch8Software Engineering - Ch8
Software Engineering - Ch8
 
Ch8
Ch8Ch8
Ch8
 
SE - System Models
SE - System ModelsSE - System Models
SE - System Models
 
Week 5
Week 5Week 5
Week 5
 
OBJECT ORIENTED ANALYSIS FOR EASY UNDERSTANDING .ppt
OBJECT ORIENTED ANALYSIS FOR EASY UNDERSTANDING .pptOBJECT ORIENTED ANALYSIS FOR EASY UNDERSTANDING .ppt
OBJECT ORIENTED ANALYSIS FOR EASY UNDERSTANDING .ppt
 
Modeling System Requirements
Modeling System RequirementsModeling System Requirements
Modeling System Requirements
 
software_engg-chap-03.ppt
software_engg-chap-03.pptsoftware_engg-chap-03.ppt
software_engg-chap-03.ppt
 
Ch07
Ch07Ch07
Ch07
 
Ch07
Ch07Ch07
Ch07
 
data science with python_UNIT 2_full notes.pdf
data science with python_UNIT 2_full notes.pdfdata science with python_UNIT 2_full notes.pdf
data science with python_UNIT 2_full notes.pdf
 

More from arvind pandey

ADBMS ALL 2069-73 [CSITauthority.blogspot.com].pdf
ADBMS ALL 2069-73 [CSITauthority.blogspot.com].pdfADBMS ALL 2069-73 [CSITauthority.blogspot.com].pdf
ADBMS ALL 2069-73 [CSITauthority.blogspot.com].pdf
arvind pandey
 
Syllabus.pdf
Syllabus.pdfSyllabus.pdf
Syllabus.pdf
arvind pandey
 
Network entites
Network entitesNetwork entites
Network entites
arvind pandey
 
Transport layer
Transport layerTransport layer
Transport layer
arvind pandey
 
Internet service provider and network backbone
Internet service provider and network backboneInternet service provider and network backbone
Internet service provider and network backbone
arvind pandey
 
Core java complete ppt(note)
Core java  complete  ppt(note)Core java  complete  ppt(note)
Core java complete ppt(note)
arvind pandey
 
Unit 6- Development Evolution model
Unit 6- Development Evolution model Unit 6- Development Evolution model
Unit 6- Development Evolution model
arvind pandey
 
Unit 5- Architectural Design in software engineering
Unit 5- Architectural Design in software engineering Unit 5- Architectural Design in software engineering
Unit 5- Architectural Design in software engineering
arvind pandey
 
Unit 3- requirements for software development
Unit 3-  requirements for software  development Unit 3-  requirements for software  development
Unit 3- requirements for software development
arvind pandey
 
Unit 2-software development process notes
Unit 2-software development process notes Unit 2-software development process notes
Unit 2-software development process notes
arvind pandey
 
Unit 1-overview of software engineering
Unit 1-overview of software engineering Unit 1-overview of software engineering
Unit 1-overview of software engineering
arvind pandey
 
Chapter1 computer introduction note
Chapter1  computer introduction note Chapter1  computer introduction note
Chapter1 computer introduction note
arvind pandey
 
computer network fundamental note
computer network fundamental note computer network fundamental note
computer network fundamental note
arvind pandey
 
I have a dream
I have a dreamI have a dream
I have a dream
arvind pandey
 
brain.ppts
brain.pptsbrain.ppts
brain.ppts
arvind pandey
 

More from arvind pandey (15)

ADBMS ALL 2069-73 [CSITauthority.blogspot.com].pdf
ADBMS ALL 2069-73 [CSITauthority.blogspot.com].pdfADBMS ALL 2069-73 [CSITauthority.blogspot.com].pdf
ADBMS ALL 2069-73 [CSITauthority.blogspot.com].pdf
 
Syllabus.pdf
Syllabus.pdfSyllabus.pdf
Syllabus.pdf
 
Network entites
Network entitesNetwork entites
Network entites
 
Transport layer
Transport layerTransport layer
Transport layer
 
Internet service provider and network backbone
Internet service provider and network backboneInternet service provider and network backbone
Internet service provider and network backbone
 
Core java complete ppt(note)
Core java  complete  ppt(note)Core java  complete  ppt(note)
Core java complete ppt(note)
 
Unit 6- Development Evolution model
Unit 6- Development Evolution model Unit 6- Development Evolution model
Unit 6- Development Evolution model
 
Unit 5- Architectural Design in software engineering
Unit 5- Architectural Design in software engineering Unit 5- Architectural Design in software engineering
Unit 5- Architectural Design in software engineering
 
Unit 3- requirements for software development
Unit 3-  requirements for software  development Unit 3-  requirements for software  development
Unit 3- requirements for software development
 
Unit 2-software development process notes
Unit 2-software development process notes Unit 2-software development process notes
Unit 2-software development process notes
 
Unit 1-overview of software engineering
Unit 1-overview of software engineering Unit 1-overview of software engineering
Unit 1-overview of software engineering
 
Chapter1 computer introduction note
Chapter1  computer introduction note Chapter1  computer introduction note
Chapter1 computer introduction note
 
computer network fundamental note
computer network fundamental note computer network fundamental note
computer network fundamental note
 
I have a dream
I have a dreamI have a dream
I have a dream
 
brain.ppts
brain.pptsbrain.ppts
brain.ppts
 

Recently uploaded

How to Configure Time Off Types in Odoo 17
How to Configure Time Off Types in Odoo 17How to Configure Time Off Types in Odoo 17
How to Configure Time Off Types in Odoo 17
Celine George
 
(T.L.E.) Agriculture: Essentials of Gardening
(T.L.E.) Agriculture: Essentials of Gardening(T.L.E.) Agriculture: Essentials of Gardening
(T.L.E.) Agriculture: Essentials of Gardening
MJDuyan
 
SYBCOM SEM III UNIT 1 INTRODUCTION TO ADVERTISING
SYBCOM SEM III UNIT 1 INTRODUCTION TO ADVERTISINGSYBCOM SEM III UNIT 1 INTRODUCTION TO ADVERTISING
SYBCOM SEM III UNIT 1 INTRODUCTION TO ADVERTISING
Dr Vijay Vishwakarma
 
Credit limit improvement system in odoo 17
Credit limit improvement system in odoo 17Credit limit improvement system in odoo 17
Credit limit improvement system in odoo 17
Celine George
 
2024 KWL Back 2 School Summer Conference
2024 KWL Back 2 School Summer Conference2024 KWL Back 2 School Summer Conference
2024 KWL Back 2 School Summer Conference
KlettWorldLanguages
 
Views in Odoo - Advanced Views - Pivot View in Odoo 17
Views in Odoo - Advanced Views - Pivot View in Odoo 17Views in Odoo - Advanced Views - Pivot View in Odoo 17
Views in Odoo - Advanced Views - Pivot View in Odoo 17
Celine George
 
Bedok NEWater Photostory - COM322 Assessment (Story 2)
Bedok NEWater Photostory - COM322 Assessment (Story 2)Bedok NEWater Photostory - COM322 Assessment (Story 2)
Bedok NEWater Photostory - COM322 Assessment (Story 2)
Liyana Rozaini
 
Webinar Innovative assessments for SOcial Emotional Skills
Webinar Innovative assessments for SOcial Emotional SkillsWebinar Innovative assessments for SOcial Emotional Skills
Webinar Innovative assessments for SOcial Emotional Skills
EduSkills OECD
 
Ardra Nakshatra (आर्द्रा): Understanding its Effects and Remedies
Ardra Nakshatra (आर्द्रा): Understanding its Effects and RemediesArdra Nakshatra (आर्द्रा): Understanding its Effects and Remedies
Ardra Nakshatra (आर्द्रा): Understanding its Effects and Remedies
Astro Pathshala
 
eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
siemaillard
 
DANH SÁCH THÍ SINH XÉT TUYỂN SỚM ĐỦ ĐIỀU KIỆN TRÚNG TUYỂN ĐẠI HỌC CHÍNH QUY N...
DANH SÁCH THÍ SINH XÉT TUYỂN SỚM ĐỦ ĐIỀU KIỆN TRÚNG TUYỂN ĐẠI HỌC CHÍNH QUY N...DANH SÁCH THÍ SINH XÉT TUYỂN SỚM ĐỦ ĐIỀU KIỆN TRÚNG TUYỂN ĐẠI HỌC CHÍNH QUY N...
DANH SÁCH THÍ SINH XÉT TUYỂN SỚM ĐỦ ĐIỀU KIỆN TRÚNG TUYỂN ĐẠI HỌC CHÍNH QUY N...
thanhluan21
 
How to Install Theme in the Odoo 17 ERP
How to  Install Theme in the Odoo 17 ERPHow to  Install Theme in the Odoo 17 ERP
How to Install Theme in the Odoo 17 ERP
Celine George
 
NAEYC Code of Ethical Conduct Resource Book
NAEYC Code of Ethical Conduct Resource BookNAEYC Code of Ethical Conduct Resource Book
NAEYC Code of Ethical Conduct Resource Book
lakitawilson
 
Lecture_Notes_Unit4_Chapter_8_9_10_RDBMS for the students affiliated by alaga...
Lecture_Notes_Unit4_Chapter_8_9_10_RDBMS for the students affiliated by alaga...Lecture_Notes_Unit4_Chapter_8_9_10_RDBMS for the students affiliated by alaga...
Lecture_Notes_Unit4_Chapter_8_9_10_RDBMS for the students affiliated by alaga...
Murugan Solaiyappan
 
How to Show Sample Data in Tree and Kanban View in Odoo 17
How to Show Sample Data in Tree and Kanban View in Odoo 17How to Show Sample Data in Tree and Kanban View in Odoo 17
How to Show Sample Data in Tree and Kanban View in Odoo 17
Celine George
 
No, it's not a robot: prompt writing for investigative journalism
No, it's not a robot: prompt writing for investigative journalismNo, it's not a robot: prompt writing for investigative journalism
No, it's not a robot: prompt writing for investigative journalism
Paul Bradshaw
 
L1 L2- NLC PPT for Grade 10 intervention
L1 L2- NLC PPT for Grade 10 interventionL1 L2- NLC PPT for Grade 10 intervention
L1 L2- NLC PPT for Grade 10 intervention
RHODAJANEAURESTILA
 
Book Allied Health Sciences kmu MCQs.docx
Book Allied Health Sciences kmu MCQs.docxBook Allied Health Sciences kmu MCQs.docx
Book Allied Health Sciences kmu MCQs.docx
drtech3715
 
The basics of sentences session 9pptx.pptx
The basics of sentences session 9pptx.pptxThe basics of sentences session 9pptx.pptx
The basics of sentences session 9pptx.pptx
heathfieldcps1
 

Recently uploaded (20)

How to Configure Time Off Types in Odoo 17
How to Configure Time Off Types in Odoo 17How to Configure Time Off Types in Odoo 17
How to Configure Time Off Types in Odoo 17
 
(T.L.E.) Agriculture: Essentials of Gardening
(T.L.E.) Agriculture: Essentials of Gardening(T.L.E.) Agriculture: Essentials of Gardening
(T.L.E.) Agriculture: Essentials of Gardening
 
SYBCOM SEM III UNIT 1 INTRODUCTION TO ADVERTISING
SYBCOM SEM III UNIT 1 INTRODUCTION TO ADVERTISINGSYBCOM SEM III UNIT 1 INTRODUCTION TO ADVERTISING
SYBCOM SEM III UNIT 1 INTRODUCTION TO ADVERTISING
 
Credit limit improvement system in odoo 17
Credit limit improvement system in odoo 17Credit limit improvement system in odoo 17
Credit limit improvement system in odoo 17
 
2024 KWL Back 2 School Summer Conference
2024 KWL Back 2 School Summer Conference2024 KWL Back 2 School Summer Conference
2024 KWL Back 2 School Summer Conference
 
Views in Odoo - Advanced Views - Pivot View in Odoo 17
Views in Odoo - Advanced Views - Pivot View in Odoo 17Views in Odoo - Advanced Views - Pivot View in Odoo 17
Views in Odoo - Advanced Views - Pivot View in Odoo 17
 
Bedok NEWater Photostory - COM322 Assessment (Story 2)
Bedok NEWater Photostory - COM322 Assessment (Story 2)Bedok NEWater Photostory - COM322 Assessment (Story 2)
Bedok NEWater Photostory - COM322 Assessment (Story 2)
 
Webinar Innovative assessments for SOcial Emotional Skills
Webinar Innovative assessments for SOcial Emotional SkillsWebinar Innovative assessments for SOcial Emotional Skills
Webinar Innovative assessments for SOcial Emotional Skills
 
Ardra Nakshatra (आर्द्रा): Understanding its Effects and Remedies
Ardra Nakshatra (आर्द्रा): Understanding its Effects and RemediesArdra Nakshatra (आर्द्रा): Understanding its Effects and Remedies
Ardra Nakshatra (आर्द्रा): Understanding its Effects and Remedies
 
“A NOSSA CA(U)SA”. .
“A NOSSA CA(U)SA”.                      .“A NOSSA CA(U)SA”.                      .
“A NOSSA CA(U)SA”. .
 
eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
 
DANH SÁCH THÍ SINH XÉT TUYỂN SỚM ĐỦ ĐIỀU KIỆN TRÚNG TUYỂN ĐẠI HỌC CHÍNH QUY N...
DANH SÁCH THÍ SINH XÉT TUYỂN SỚM ĐỦ ĐIỀU KIỆN TRÚNG TUYỂN ĐẠI HỌC CHÍNH QUY N...DANH SÁCH THÍ SINH XÉT TUYỂN SỚM ĐỦ ĐIỀU KIỆN TRÚNG TUYỂN ĐẠI HỌC CHÍNH QUY N...
DANH SÁCH THÍ SINH XÉT TUYỂN SỚM ĐỦ ĐIỀU KIỆN TRÚNG TUYỂN ĐẠI HỌC CHÍNH QUY N...
 
How to Install Theme in the Odoo 17 ERP
How to  Install Theme in the Odoo 17 ERPHow to  Install Theme in the Odoo 17 ERP
How to Install Theme in the Odoo 17 ERP
 
NAEYC Code of Ethical Conduct Resource Book
NAEYC Code of Ethical Conduct Resource BookNAEYC Code of Ethical Conduct Resource Book
NAEYC Code of Ethical Conduct Resource Book
 
Lecture_Notes_Unit4_Chapter_8_9_10_RDBMS for the students affiliated by alaga...
Lecture_Notes_Unit4_Chapter_8_9_10_RDBMS for the students affiliated by alaga...Lecture_Notes_Unit4_Chapter_8_9_10_RDBMS for the students affiliated by alaga...
Lecture_Notes_Unit4_Chapter_8_9_10_RDBMS for the students affiliated by alaga...
 
How to Show Sample Data in Tree and Kanban View in Odoo 17
How to Show Sample Data in Tree and Kanban View in Odoo 17How to Show Sample Data in Tree and Kanban View in Odoo 17
How to Show Sample Data in Tree and Kanban View in Odoo 17
 
No, it's not a robot: prompt writing for investigative journalism
No, it's not a robot: prompt writing for investigative journalismNo, it's not a robot: prompt writing for investigative journalism
No, it's not a robot: prompt writing for investigative journalism
 
L1 L2- NLC PPT for Grade 10 intervention
L1 L2- NLC PPT for Grade 10 interventionL1 L2- NLC PPT for Grade 10 intervention
L1 L2- NLC PPT for Grade 10 intervention
 
Book Allied Health Sciences kmu MCQs.docx
Book Allied Health Sciences kmu MCQs.docxBook Allied Health Sciences kmu MCQs.docx
Book Allied Health Sciences kmu MCQs.docx
 
The basics of sentences session 9pptx.pptx
The basics of sentences session 9pptx.pptxThe basics of sentences session 9pptx.pptx
The basics of sentences session 9pptx.pptx
 

Unit 4- Software Engineering System Model Notes

  • 2. Topics covered Context models Behavioural modelsBehavioural models Data models Object models CASE workbenches
  • 3. System modelling System modelling helps the analystanalyst to understand the functionality of the system and modelsmodels are usedy y to communicatecommunicate with customerscustomers.. Different models present the system from differentDifferent models present the system from different perspectives •• ExternalExternal perspectiveperspective showing the system’s context or environment; Beha io ralBeha io ral perspecti eperspecti e sho ing the beha io r of the s stem•• BehaviouralBehavioural perspectiveperspective showing the behaviour of the system; •• StructuralStructural perspectiveperspective showing the system or data architecture.architecture.
  • 4. Model types DataData processingprocessing modelmodel showing how the datadata isis processedprocessed at different stages. CompositionComposition modelmodel showing how entitiesentities areare composedcomposed of other entitiescomposedcomposed of other entities. ArchitecturalArchitectural modelmodel showing principal sub-systems. ClassificationClassification modelmodel showing how entitiesentities havehave commoncommon characteristicscharacteristics. Stimulus/responseStimulus/response model/Statemodel/State showing the system’s reaction to eventssystem s reaction to events.
  • 5. Context models-External perspectiveExternal perspective Context models are used to illustrate the operationaloperational contextcontext of a system - they show whatpp y y lies outsideoutside thethe systemsystem boundariesboundaries.
  • 6. The context of an ATM system Security system Account da tabase Branch accounting system Auto-teller system Branch M i t Usage database Branch counter system Maintenance system
  • 7. Behavioural models Behavioural models are used to describe the overall behaviour of a system. Two types of behavioural model are: •• DataData processingprocessing modelsmodels that show how data•• DataData processingprocessing modelsmodels that show how data is processed as it moves through the system; •• StateState machinemachine modelsmodels that show the systems response to events.
  • 8. Process models Data flow models may be used to show the processes and the flowflow ofof informationinformation fromfrom oneonep processprocess toto anotheranother..
  • 9. Data-processing models Data flow diagrams (DFDs) may be used to model the system’s data processing.y p g These show the processing steps as data flows through a systemthrough a system. DFDs are an intrinsic part of many analysis methods. Simple and intuitive notation that customers canp understand. Sh d t d i f d tShow end-to-end processing of data.
  • 10. Equipment procurement process Equipment Checked spec Deli very note Deli very note Get cost estima tes Accept deli very of equipment Check delivered items Valida te specification Specify equipment requir ed spec. spec. Or der Installa tion i t ti Spec. + supplier + estima teEquipment Choose supplier Place equipment order Install equipment Find suppliers Supplier da tabase Or der notifica tion instructions Order details plus estima te Supplier list Equipment spec. Accept deli vered Installa tion acceptance Ch k d d p blank or der for m equipment Equipment details Check ed and signed or der f orm Equipment da tabase
  • 11. State machine models These model the behaviour of the system inThese model the behaviour of the system in response to external and internal events. They show the system’s responses to stimuli (Stimuli are events in the environment that influence behavior.)so are often used for modelling real-time systems. State machine models show systemsystem statesstates asState machine models show systemsystem statesstates as nodesnodes and eventsevents as arcsarcs between these nodes. When an e ent occ rs the s stem mo es from oneWhen an event occurs, the system moves from one state to another. State charts are an integral part of the UML and are used to represent state machine models.
  • 12. State charts Allow the decomposition of a model into sub-models A brief description of the actions is includedA brief description of the actions is included following the ‘do’ in each state. Can be complemented by tablestables describingdescribing the states and the stimuli.
  • 13. Microwave oven state table description State Description Waiting The oven is waiting for input. The display shows the current time.g g p p y Half power The oven power is set to 300 watts. The display shows ‘Half power’. Full power The oven power is set to 600 watts. The display shows ‘Full power’. Set time The cooking time is set to the user’s input value. The display shows the cooking time selected and is updated as the time is set. Disabled Oven operation is disabled for safety. Interior oven light is on. Display shows ‘Not ready’. Enabled Oven operation is enabled. Interior oven light is off. Display shows ‘Ready top g p y y cook’. Operation Oven in operation. Interior oven light is on. Display shows the timer countdown. On completion of cooking, the buzzer is sounded for 5 seconds. Oven light is on. Display shows ‘Cooking complete’ while buzzer is sounding.
  • 14. Microwave oven model Full power Full pow er do: set power = 600 do: operate Full power Number Set time do: get number Operation Waiting do: display time Timer do: operate oven Half power Half power p Door Door closed Start do: get number exit: set time CancelTimer Enabled Door open Door closed Door openHalf power do: set power = 3 00 Waiting do: display time do: display 'Ready' Disabled do: display 'Waiting'
  • 15. Microwave oven stimuli Stimulus Description Half power The user has pressed the half power button Full power The user has pressed the full power button Timer The user has pressed one of the timer buttons Number The user has pressed a numeric key Door open The oven door switch is not closed Door closed The oven door switch is closedDoor closed The oven door switch is closed Start The user has pressed the start button Cancel The user has pressed the cancel button
  • 16. Microwave oven operation C k Checking Time Operation Cook do: run generator do: check status g Turntable Emitter OK Timeout Done do: buzzer on f 5 Alarm do: display Turntable fault Emitter fault Timeout for 5 secs. do: display event Door open Cancel WaitingDisabled
  • 17. Semantic data models Used to describe the logicallogical structurestructure ofof datadata processedprocessed by the system.pp y y An entity-relation-attribute model sets out the entities in the system the relationships betweenentities in the system, the relationships between these entities and the entity attributes Widely used in database design. Can readily be implemented using relational databases.
  • 19. Data dictionaries Data dictionaries are listslists ofof allall of the names used in the system models. Descriptions of the entities,y p , relationships and attributes are also included. AdvantagesAdvantages • Support name management and avoid duplication; • Store of organisational knowledge linking analysis, design and implementation; Many CASE workbenches support data dictionaries.
  • 20. Data dictionary entries Name Description Type Date Article Details of the published article that may be ordered by people using LIBSYS. Entity 30.12.2002 authors The names of the authors of the article who may be due Attribute 30 12 2002authors The names of the authors of the article who may be due a share of the fee. Attribute 30.12.2002 Buyer The person or organisation that orders a copy of the article. Entity 30.12.2002 fee-payable- to A 1:1 relationship between Article and the Copyright Agency who should be paid the copyright fee. Relation 29.12.2002 Address (Buyer) The address of the buyer. This is used to any paper billing information that is required. Attribute 31.12.2002 y g q
  • 21. Object models “Object", refers to a particular instance of a ClassClass Object models describe the system in terms ofObject models describe the system in terms of object classes and their associations. An object class is an abstraction over a set of objects with common attributes and the services (operations) provided by each object. Various object models may be producedj y p • Inheritance models; • Aggregation models;• Aggregation models; • Interaction models.
  • 22. Object models Natural ways of reflecting the realreal--worldworld entitiesentities manipulated by the systemp y y Object class identification is recognised as a difficult process requiring a deep understanding of theprocess requiring a deep understanding of the application domain Object classes reflecting domain entities are reusablereusable acrossacross systemssystems
  • 23. Inheritance models Classes at the top of the hierarchy reflect the common features of all classes. Object classes inherit their attributes and services from one or more super classesfrom one or more super-classes.
  • 24. Object models and the UML Th UML i t d d t ti d i d b thThe UML is a standard representation devised by the developers of widely used object-oriented analysis and design methodsmethods. It has become an effective standard for object-oriented modellingmodelling. Notation Object classes are rectanglesrectangles ith the name at the top• Object classes are rectanglesrectangles with the name at the top, attributesattributes inin thethe middlemiddle sectionsection and operationsoperations inin thethe bottombottom section; • Relationships between object classes (knownknown asas associationsassociations) are shown as lines linking objects; • Inheritance is referred to as generalisation and is shown ‘upwards‘upwards’ rather than ‘downwards’downwards’ in a hierarchy.
  • 27. Multiple inheritance Rather than inheriting the attributes and services from a single parent class, a system which supportsg p , y pp multiple inheritance allows object classes to inherit fromfrom severalseveral supersuper--classesclassesfromfrom severalseveral supersuper--classesclasses.. This can lead to semantic conflicts where attributes/services with the same name in different super-classes have different semantics. Multiple inheritance makes class hierarchy reorganisation more complex.reorganisation more complex.
  • 29. Object behaviour modelling Sequence diagrams (or collaboration diagrams) in the UML are used to model interaction between objects.
  • 31. Structured methods Methods define a set of models, a process for deriving these models and rules and guidelines thatg g should apply to the models. CASE tools support system modelling as part of aCASE tools support system modelling as part of a structured method.
  • 32. Method weaknesses They do not model non-functional system requirements.q They do not usually include information about whether a method is appropriate for a givenwhether a method is appropriate for a given problem. The may produce too much documentation. The system models are sometimes too detailed andy difficult for users to understand.
  • 33. CASE workbenches A coherent set of tools that is designed to support related software process activities such as analysis,p y , design or testing. Analysis and design workbenches support systemAnalysis and design workbenches support system modelling during both requirements engineering and system design. These workbenches may support a specific design method or may provide support for a creating several different types of system modelseveral different types of system model.
  • 34. An analysis and design workbench
  • 35. Analysis workbench components Diagram editors Model analysis and checking toolsModel analysis and checking tools Repository and associated query language Data dictionary Report definition and generation toolsp g Forms definition tools I t/ t t l tImport/export translators Code generation tools
  • 36. Project managementProject managementProject managementProject management
  • 37. Topics covered Project Management activities Project planningProject planning Project scheduling Risk management
  • 38. Software project management Concerned with activitiesactivities involved in ensuring that software is delivered onon timetime and onon scheduleschedule and in accordance with the requirements of the organisations developingrequirements of the organisations developing and procuring the software. Project management is needed because software development is always subject to budget and schedule constraints that are set by the organisation developing the software.g p g
  • 39. Software Project Management activities Proposal writing. Project planning and schedulingProject planning and scheduling. Project costing. Project monitoring and reviews. Personnel selection and evaluation. Report writing and presentations.
  • 40. Project staffing May not be possible to appoint the ideal people to work on a project • Project budget may not allow for the use of highly-paid staff;; • Staff with the appropriate experience may not be available;available; • An organisation may wish to develop employee skills on a software projecton a software project. Managers have to work within these constraints i ll h th h t f t i d t ffespecially when there are shortages of trained staff.
  • 41. Project planning Probably the most time-consuming project management activity.g y Continuous activity from initial concept through to system delivery Plans must be regularly revisedto system delivery. Plans must be regularly revised as new information becomes available. Various different types of plan may be developed to support the main software project plan that is concerned with schedule and budget.
  • 42. Types of project plan Plan Description Quality plan Describes the quality procedures and standards that will b d i jbe used in a project. . Validation plan Describes the approach, resources and schedule used for system validation. Configuration management plan Describes the configuration management procedures and structures to be used. Maintenance plan Predicts the maintenance requirements of the system, maintenance costs and effort required. Staff development Describes how the skills and experience of the projectp plan. p p j team members will be developed.
  • 43. Project planning process E t bli h th j t t i tEstablish the project constraints Make initial assessments of the project parameters Define project milestones and deliverables while project has not been completed or cancelled loop Draw up project schedule Initiate activities according to scheduleg Wait ( for a while ) Review project progress Revise estimates of project parametersRevise estimates of project parameters Update the project schedule Re-negotiate project constraints and deliverables if ( problems arise ) then Initiate technical review and possible revision end if end loop
  • 44. The project plan The project plan sets out: • The resources available to the project;The resources available to the project; • The work breakdown; • A schedule for the work.
  • 45. Project plan structure Introduction. Project organisationProject organisation. Risk analysis. Hardware and software resource requirements. Work breakdown. Project schedule. M it i d ti h iMonitoring and reporting mechanisms.
  • 46. Activity organization Activities in a project should be organised to produce tangible outputs for management to judgep g p g j g progress. Milestones are the end point of a process activityMilestones are the end-point of a process activity. Deliverables are project results delivered to customers. The waterfall process allows for the straightforwardp g definition of progress milestones.
  • 47. Project scheduling Split project into tasks and estimate time and resources required to complete each task.q p Organize tasks concurrently to make optimal use of workforceuse of workforce. Minimize task dependencies to avoid delays caused by one task waiting for another to complete. Dependent on project managers intuition andp p j g experience.
  • 49. Scheduling problems Estimating the difficulty of problems and hence the cost of developing a solution is hard.p g Productivity is not proportional to the number of people working on a taskpeople working on a task. Adding people to a late project makes it later because of communication overheads. The unexpected always happens. Always allowp y pp y contingency in planning.
  • 50. Bar charts and activity networks Graphical notations used to illustrate the project schedule. Show project breakdown into tasks. Tasks should not be too small They should take about a week ornot be too small. They should take about a week or two. Activity charts show task dependencies and the the critical path. Bar charts show schedule against calendar time.
  • 51. Task durations and dependencies Activity Duration (days) Dependencies T1 8 2 1T2 15 T3 15 T1 (M1) T4 10 T5 10 T2, T4 (M2) T6 5 T1, T2 (M3) T7 20 T1 (M1) T8 25 T4 (M5) T9 15 T3, T6 (M4) T10 15 T5, T7 (M7) T11 7 T9 (M6) T12 10 T11 (M8)
  • 55. Risk management Risk management is concerned with identifying risks and drawing up plans to minimise their effect on a project. A risk is a probability that some adverse circumstance will occur • Project risks affect schedule or resources; • Product risks affect the quality or performance of the software being developed; • Business risks affect the organisation developing or procuring the software.
  • 56. Software risks Risk Affects Description Staff turnover Project Experienced staff will leave the project before it is finished. Management change Project There will be a change of organisational management with different priorities. Hardware unavailability Project Hardware that is essential for the project will not be delivered on schedule. Requirements change Project and product There will be a larger number of changes to the requirements than anticipated. Specification delays Project and product Specifications of essential interfaces are not available on schedule Size underestimate Project and product The size of the system has been underestimated. CASE tool under- performance Product CASE tools which support the project do not perform as anticipated Technology change Business The underlying technology on which the system is built is superseded by new technology. Product competition Business A competitive product is marketed before the system is completed.
  • 58. The risk management process Risk identification • Identify project, product and business risks; Risk analysis • Assess the likelihood and consequences of these risks; Risk planning • Draw up plans to avoid or minimise the effects of the risk;p p ; Risk monitoring • Monitor the risks throughout the project;Monitor the risks throughout the project;
  • 59. Risk identification Technology risks. People risksPeople risks. Organisational risks. Requirements risks. Estimation risks.
  • 60. Risks and risk types Risk type Possible risks Technology The database used in the system cannot process as many transactions per second as expected.as expected. Software components that should be reused contain defects that limit their functionality. People It is impossible to recruit staff with the skills required. Key staff are ill and unavailable at critical times. i d i i f ff i il blRequired training for staff is not available. Organisational The organisation is restructured so that different management are responsible for the project. Organisational financial problems force reductions in the project budget. Tools The code generated by CASE tools is inefficient. CASE tools cannot be integrated. Requirements Changes to requirements that require major design rework are proposed. Customers fail to understand the impact of requirements changes. Estimation The time required to develop the software is underestimated. The rate of defect repair is underestimated. The size of the software is underestimated.
  • 61. Risk analysis Assess probability and seriousness of each risk. Probability may be very low low moderate high orProbability may be very low, low, moderate, high or very high. Risk effects might be catastrophic, serious, tolerable or insignificant.
  • 62. Risk analysis (i) Risk Probability Effects Organisational financial problems force reductions in Low CatastrophicOrganisational financial problems force reductions in the project budget. Low Catastrophic It is impossible to recruit staff with the skills required for the project. High Catastrophic Key staff are ill at critical times in the project. Moderate Serious Software components that should be reused contain defects which limit their functionality. Moderate Serious Changes to requirements that require major design rework are proposed. Moderate Serious The organisation is restructured so that different ibl f h j High Serious management are responsible for the project.
  • 63. Risk analysis (ii) Risk Probability Effects The database used in the system cannot process as Moderate Serious many transactions per second as expec ted. The time required to develop the software is underestimated. High Serious CASE tools cannot be integrated High TolerableCASE tools cannot be integrated. High Tolerable Customers fail to understand the impact of requirements changes. Moderate Tolerable Required training for staff is not available. Moderate Tolerableq g The rate of defect repair is underestimated. Moderate Tolerable The size of the software is underestimated. High Tolerable The code generated by CASE tools is inefficient. Moderate Insignificantg y g
  • 64. Risk planning Consider each risk and develop a strategy to manage that risk. Avoidance strategies • The probability that the risk will arise is reduced; Minimisation strategies • The impact of the risk on the project or product will be reduced; Contingency plans • If the risk arises, contingency plans are plans to deal with, g y p p that risk;
  • 65. Risk management strategies (i) Risk Strategy Organisational financial problems Prepare a briefing document for senior management showing how th e project is making a very important contribution to the goals of the business. Recruitment problems Alert customer of potential difficulties and the possibility of delays, investigate buying-in components. Staff illness Reorganise team so that there is more overlap of work and people therefore understand each other’s jobs. Defective Replace potentially defective components with bought-Defective components Replace potentially defective components with bought- in components of known reliability.
  • 66. Risk management strategies (ii) Risk Strategy Requirements changes Derive traceability information to assess requirements change impact, maximise information hiding in the design. O i ti l P b i fi d t f i tOrganisational restructuring Prepare a briefing document for senior management showing how th e project is making a very important contribution to the goals of the business. Database Investigate the possibility of buying a higherDatabase performance Investigate the possibility of buying a higher- performance database. Underestimated development time Investigate buying in components, investigate use of a program generatordevelopment time program generator
  • 67. Risk monitoring Assess each identified risks regularly to decide whether or not it is becoming less or more probable.g p Also assess whether the effects of the risk have changedchanged. Each key risk should be discussed at management progress meetings.
  • 68. Risk indicators Risk type Potential indicators T h l L d li f h d f dTechnology Late delivery of hardware or support software, many reported technology problems People Poor staff morale, poor relationships amongst team member, job availabilityjob availability Organisational Organisational gossip, lack of action by senior management Tools Reluctance by team members to use tools, complaints about CASE tools demands for higher powered workstationsCASE tools, demands for higher-powered workstations Requirements Many requirements change requests, customer complaints Estimation Failure to meet agreed schedule, failure to clear reported d f tdefects
  • 69. Chapter Review Questions 1.Explain different types of system model in details. 2.Define Context model. Draw a context model for library system. 3.Explain semantic data model with suitable example. 4.Describe the state machine model with example. 5 W it h t t5. Write short note on a. Ethnography b.Use case c.Sequence diagram d.CASE workbench e. Risk planning f. Data dictionaryp g y 6. Describe the software project management activities in details. 7. Explain the importance of planning and scheduling in software project management. 8. Discuss the importance of risk management in software project. Explain various risk management strategiesvarious risk management strategies.