SlideShare a Scribd company logo
1 of 53
Analysis
Preeti Mishra
Course Instructor
System Development
Introduction
• System development is model building
• Starts when a requirement of system identified
• Specification can be used for contract and to plan and
control the development process
• As Complex process handle poorly so any systematic
method like structured or OOAM can used from start to
end of system life cycle
Introduction
• Selecting a methodology is not simple, as no one
methodology is always best.
• Many organizations have their own standards.
• Systems nature, constraints, and rules playing a major
rule in deciding which methodology to use
• Your experience as analyst is important to compare
and decide which methodology to use
Structured Analysis and Design Vs
OO Analysis and Design
• Structured analysis is a traditional systems development
technique that is time-tested and easy to understand.
• Structured analysis uses a set of process models to
describe a system graphically.
• Because it focuses on processes that transform data into
information, structured analysis is called a process-
centered technique
• Whereas structured analysis treats processes and data as
separate components, object-oriented analysis combines
data and the processes that act on the data into things
called objects.
• System analysts use O-O to model real world business
processes and operation.
• The result is a set of software objects that represent
actual people, things, transactions and events
Traditional Software Development
Structured analysis and design
– Advantages of Structured analysis and design
• visual, so it is easier for users/programmers to
understand
• Makes good use of graphical tools
• A mature technique
• Process-oriented approach is a natural way of thinking
• simple and easy to understand and impalement
Disadvantages of Structured
analysis and design
• Not enough user-analyst interaction
• It depends on dividing system to sub systems but
it is to decide when to stop decomposing
Object Orientation
Encapsulation
Abstraction
Hierarchy
Modularity
Basic Principles of Object
Orientation
Basic Concepts of Object Orientation
(Few of them Already Studied)
• Object
• Class
• Attribute
• Operation
• Interface (Polymorphism)
• Component
• Package
• Subsystem
• Relationships
Systems Development Methodologies
Object-Oriented analysis and design
– Object-Oriented analysis and design becoming
popular because of its ability to thoroughly:
• represent complex relationships,
• as well as represent data and data processing with a
consistent notation
– Object-Oriented analysis and design blend
analysis and design in evolutionary process
– It allows you to deal with the complexity inherent
in a real-world problem by focusing on the
essential and interesting features of an
application
Systems Development Methodologies
Object-Oriented analysis and design
– Process of progressively developing representation
of a system component (or object) through the
phases of:
• analysis,
• design and
• implementation
– The model is abstract in the early stages
– As the model evolves, it becomes more and more
detailed
Object-Oriented systems development life cycle
• Object-Oriented analysis and design
• object representation through three phases
– analysis,
– design, and
– implementation
Analysis,
Design, and
Implementation
Analysis Phase
– Object-oriented analysis is a popular approach
that sees a system from the viewpoint of the
objects themselves as they function and interact
– Model of the real-world application is developed showing its
important properties
– Model specifies the functional behavior of the system independent
of implementation details
Design Phase
– Design Phase
• Analysis model is refined and adapted to the
environment
• Can be separated into two stages
– System design
» Concerned with overall system architecture
– Object design
» Implementation details are added to system design
Implementation Phase
– Implementation Phase
• Design is implemented using a programming language
and/ or database management system
Testing Phase follows..
• Testing Process
– Unit
– Integration
– System
Analysis
In Detail
Introduction
• The analysis phase defines the requirements of the system,
independent of how these requirements will be accomplished.
• This phase defines the problem that the customer is trying to
solve.
• The deliverable result at the end of this phase is a
requirement document. Ideally, this document states in a clear
and precise fashion what is to be built.
• This analysis represents the ``what'' phase.
• The requirement document tries to capture the requirements
from the customer's perspective by defining goals and
interactions at a level removed from the implementation
details.
Object Oriented
Analysis
• We use UML (Unified Modeling Language) to
represent the analysis details.
• Following models are used to model the Object
Oriented Analysis using UML
– Use Case Diagram
– Class diagram
Domain Model
What is a domain model?
• “A domain model captures the most important
types of objects in the context of the business.
The domain model represents the ‘things’ that exist
or events that transpire in the business
environment.” – I. Jacobsen
What is a Domain Model?
• Illustrates meaningful conceptual classes in
problem domain
• Represents real-world concepts, not software
components
Why do a domain model?
• Gives a conceptual framework of the things in the problem
space
• Helps you think – focus on semantics
• Provides a glossary of terms – noun based
• It is a static view - meaning it allows us convey time
invariant business rules
• Foundation for use case/workflow modelling
• Based on the defined structure, we can describe the state
of the problem domain at any time.
Features of a domain model
• The following features enable us to express
time invariant static business rules for a
domain:-
o Domain classes – each domain class denotes a type of object.
o Attributes – an attribute is the description of a named slot of a
specified type in a domain class; each instance of the class separately
holds a value.
o Associations – an association is a relationship between two (or more)
domain classes that describes links between their object instances.
Associations can have roles, describing the multiplicity and
participation of a class in the relationship.
o Additional rules – complex rules that cannot be shown with symbology
can be shown with attached notes.
Identifying Domain
Classes from Problem
Statement
How to Draw Domain Model
• Reuse an existing domain model
– There are many published, well-crafted domain models.
• •Use a conceptual class category list
– Make a list of all candidate conceptual classes
• •Identify noun phrases
– Identify nouns and phrases in textual descriptions of a
domain ( use cases, or other documents)
Domain classes?
• Each domain class denotes a type of object. It is a
descriptor for a set of things that share common features.
Classes can be:-
o Business objects - represent things that are manipulated in the
business e.g. Order.
o Real world objects – things that the business keeps track of e.g.
Contact, Site.
o Events that transpire - e.g. sale and payment.
• A domain class has attributes and associations with other
classes
• It is important that a domain class is given a good
description
There are different
types of Objects
• Entity Objects
– Represent the persistent information tracked
by the system (Application domain objects, also
called “Business objects”)
• Boundary Objects
– Represent the interaction between the user
and the system
• Control Objects
– Represent the control tasks performed by the
system.
Year
Month
Day
ChangeDate
Button
LCDDisplay
Entity Objects Control Object Boundary Objects
To distinguish different object types
in a model we can use the
UML Stereotype mechanism
Class Identification
Class identification is crucial to object-
oriented modeling
– Helps to identify the important entities of a
system
• Basic assumptions:
1. We can find the classes for a new software
system (Forward Engineering)
2. We can identify the classes in an existing
system (Reverse Engineering)
• Why can we do this?
– Philosophy, science, experimental evidence.
Class Identification
• Approaches
– Application domain approach
• Ask application domain experts to identify relevant
abstractions
– Syntactic approach
• Start with use cases
• Analyze the text to identify the objects
• Extract participating objects from flow of events
– Design patterns approach
• Use reusable design patterns
– Component-based approach
• Identify existing solution classes.
Ways to find Objects
• Syntactical investigation with Abbot‘s technique:
– Flow of events in use cases
– Problem statement
• Use other knowledge sources:
– Application knowledge: End users and experts know the
abstractions of the application domain
– Solution knowledge: Abstractions in the solution domain
– General world knowledge: Your generic knowledge and
intution
Class identification is a
Hard Problem
• One problem: Definition of the system boundary:
– Which abstractions are outside, which abstractions are
inside the system boundary?
• Actors are outside the system
• Classes/Objects are inside the system.
• An other problem: Classes/Objects are not just
found by taking a picture of a scene or domain
– The application domain has to be analyzed
– Depending on the purpose of the system different objects
might be found
• How can we identify the purpose of a system?
• Scenarios and use cases => Functional model
Steps for Domain Classes
1. Make a list of potential objects by finding out the nouns and noun
phrases from narrative problem statement
2. Apply subject matter expertise (or domain knowledge) to identify
additional classes
3. Filter out the redundant or irrelevant classes
4. Classify all potential objects based on categories.
5. Group the objects based on similar attributes. While grouping we
should remember that Different nouns (or noun phrases) can actually
refer to the same thing (examples: house, home, abode)
6. Same nouns (or noun phrases) could refer to different things or
concepts (example: I go to school every day / This school of thought
agrees with the theory)
7. Give related names to each group to generate the final list of top level
classes Iterate over to refine the list of classes
Listing Noun Phrases
• An obvious way to identify domain classes is to identify
nouns and phrases in textual descriptions of a domain.
• Consider a use case description as follows:-
1. Customer arrives at a checkout with goods and/or services to
purchase.
2. Cashier starts a new sale.
3. Cashier enters item identifier.
4. System records the sale line item and presents the item
description, price and running total.
Where to identify conceptual
classes from noun phrases
• Vision and Scope, Glossary and Use Cases are
good for this type of linguistic analysis
• However:
– •Words may be ambiguous or synonymous
– •Noun phrases may also be attributes or parameters
rather than classes:
• If it stores state information or it has multiple behaviors, then it’s
a class
• If it’s just a number or a string, then it’s probably an attribute
Few Hints..
Categories Explanation
People
Humans who carry out some
function
Places
Areas set aside for people or
things
Things Physical objects
Organizations
Collection of people, resources,
facilities and capabilities having a
defined mission
Concepts Principles or Ideas not tangible
Events
Things that happen (usually at a
given date and time), or as a steps
in an ordered sequence
Identifying attributes ?
• A domain class sounds like an attribute if: -
o It relies on an associated class for it’s
identity – e.g. ‘order number’ class
associated to an ‘order’ class. The ‘order
number’ sounds suspiciously like an
attribute of ‘order’.
o It is a simple data type – e.g. ‘order
number’ is a simple integer. Now it really
sounds like an attribute!
Combining the learning
Perform the following in very short iterations:
o Make a list of candidate domain classes.
o Draw these classes in a UML class diagram.
o If possible, add brief descriptions for the classes.
o Identify any associations that are necessary.
o Decide if some domain classes are really just attributes.
o Where helpful, identify role names and multiplicity for associations.
o Add any additional static rules as UML notes that cannot be conveyed
with UML symbols.
o Group diagrams/domain classes by category into packages.
Concentrate more on just identifying domain classes
in early iterations !
Steps in Generating Class
Diagrams
1. Class identification (textual analysis, domain expert)
2. Identification of attributes and operations
(sometimes before the classes are found!)
3. Identification of associations between classes
4. Identification of multiplicities
5. Identification of roles
6. Identification of inheritance
Work it out…
• example
Who uses Class
Diagrams?
• Purpose of class diagrams
– The description of the static properties of a
system
• The main users of class diagrams:
– The application domain expert
• uses class diagrams to model the application domain
(including taxonomies)
– during requirements elicitation and analysis
– The developer
• uses class diagrams during the development of a
system
– during analysis, system design, object design and
implementation.
Who does not use Class Diagrams?
• The client and the end user are usually not
interested in class diagrams
– Clients focus more on project management
issues
– End users are more interested in the
functionality of the system.
Developers have different
Views on Class Diagrams
• According to the development activity, a
developer plays different roles:
– Analyst
– System Designer
– Object Designer
– Implementor
• Each of these roles has a different view about
the class diagram (the object model).
An overview of OOSE development
activities and their products
Requirements
elicitation
Analysis
System design
problem statement
functional
model
nonfunctional
requirements
analysis
object model
dynamic
model
class diagram
use case
diagram
statechart
diagram
sequence diagram

More Related Content

What's hot

What's hot (20)

Lesson 2 selection of research topic
Lesson 2 selection of research topicLesson 2 selection of research topic
Lesson 2 selection of research topic
 
oneway ANOVA.ppt
oneway ANOVA.pptoneway ANOVA.ppt
oneway ANOVA.ppt
 
Data analysis
Data analysisData analysis
Data analysis
 
descriptive and inferential statistics
descriptive and inferential statisticsdescriptive and inferential statistics
descriptive and inferential statistics
 
Observation
Observation Observation
Observation
 
Lab equip
Lab equipLab equip
Lab equip
 
Data Processing
Data ProcessingData Processing
Data Processing
 
Statistical analysis
Statistical  analysisStatistical  analysis
Statistical analysis
 
Type of data
Type of dataType of data
Type of data
 
Descriptive Statistics.pptx
Descriptive Statistics.pptxDescriptive Statistics.pptx
Descriptive Statistics.pptx
 
Branches and application of statistics
Branches and application of statisticsBranches and application of statistics
Branches and application of statistics
 
Probability sampling
Probability samplingProbability sampling
Probability sampling
 
Data collection and analysis
Data collection and analysisData collection and analysis
Data collection and analysis
 
Inferential statictis ready go
Inferential statictis ready goInferential statictis ready go
Inferential statictis ready go
 
T test
T testT test
T test
 
Analysis and Interpretation of Data
Analysis and Interpretation of DataAnalysis and Interpretation of Data
Analysis and Interpretation of Data
 
Research Methods: Basic Concepts and Methods
Research Methods: Basic Concepts and MethodsResearch Methods: Basic Concepts and Methods
Research Methods: Basic Concepts and Methods
 
Web 2.0 Tools for Researchers
Web 2.0 Tools for ResearchersWeb 2.0 Tools for Researchers
Web 2.0 Tools for Researchers
 
Accuracy: Random and Systematic Errors
Accuracy: Random and Systematic ErrorsAccuracy: Random and Systematic Errors
Accuracy: Random and Systematic Errors
 
Data and its Types
Data and its TypesData and its Types
Data and its Types
 

Viewers also liked

System Analysis and Design
System Analysis and DesignSystem Analysis and Design
System Analysis and DesignAamir Abbas
 
Graphics input and output devices
Graphics input and output devicesGraphics input and output devices
Graphics input and output devicesVamsi Dhar
 
CG - Input Output Devices
CG - Input Output DevicesCG - Input Output Devices
CG - Input Output Devicesvinay arora
 
Graphics inputdevices
Graphics inputdevicesGraphics inputdevices
Graphics inputdevicesBCET
 
I/O devices - Computer graphics
I/O devices -  Computer graphicsI/O devices -  Computer graphics
I/O devices - Computer graphicsAmritha Davis
 
Input, Output Ppt
Input, Output PptInput, Output Ppt
Input, Output PptLisa Durff
 
Input And Output devices of computer
Input And Output devices of computer Input And Output devices of computer
Input And Output devices of computer Sayak Ghosh
 
Input Devices
Input DevicesInput Devices
Input Devicesantzwithu
 
C# Tutorial
C# Tutorial C# Tutorial
C# Tutorial Jm Ramos
 
analysis and design of information system
analysis and design of information systemanalysis and design of information system
analysis and design of information systemRenu Sharma
 
Input and output devices ppt
Input and output devices pptInput and output devices ppt
Input and output devices pptbjslides
 
Presentation on input devices...
Presentation on input devices... Presentation on input devices...
Presentation on input devices... simmi khera
 

Viewers also liked (20)

Structured Analysis and Structured Design
Structured Analysis and Structured DesignStructured Analysis and Structured Design
Structured Analysis and Structured Design
 
System Analysis and Design
System Analysis and DesignSystem Analysis and Design
System Analysis and Design
 
Graphics input and output devices
Graphics input and output devicesGraphics input and output devices
Graphics input and output devices
 
CG - Input Output Devices
CG - Input Output DevicesCG - Input Output Devices
CG - Input Output Devices
 
C#.NET
C#.NETC#.NET
C#.NET
 
Graphics inputdevices
Graphics inputdevicesGraphics inputdevices
Graphics inputdevices
 
Input Devices
Input DevicesInput Devices
Input Devices
 
I/O devices - Computer graphics
I/O devices -  Computer graphicsI/O devices -  Computer graphics
I/O devices - Computer graphics
 
class diagram
class diagramclass diagram
class diagram
 
C# basics
 C# basics C# basics
C# basics
 
Input devices
Input devicesInput devices
Input devices
 
Input, Output Ppt
Input, Output PptInput, Output Ppt
Input, Output Ppt
 
Input And Output devices of computer
Input And Output devices of computer Input And Output devices of computer
Input And Output devices of computer
 
Input Devices
Input DevicesInput Devices
Input Devices
 
C# Tutorial
C# Tutorial C# Tutorial
C# Tutorial
 
analysis and design of information system
analysis and design of information systemanalysis and design of information system
analysis and design of information system
 
Presentation on input devices
Presentation on input devicesPresentation on input devices
Presentation on input devices
 
Input and output devices ppt
Input and output devices pptInput and output devices ppt
Input and output devices ppt
 
Presentation on input devices...
Presentation on input devices... Presentation on input devices...
Presentation on input devices...
 
Input and output devices
Input and output devicesInput and output devices
Input and output devices
 

Similar to Analysis

Transition from Systems Analysis to Systems Designs
Transition from Systems Analysis to Systems DesignsTransition from Systems Analysis to Systems Designs
Transition from Systems Analysis to Systems DesignsAnalene de Guzman
 
oomd-unit-i-cgpa.ppt
oomd-unit-i-cgpa.pptoomd-unit-i-cgpa.ppt
oomd-unit-i-cgpa.pptPavan992098
 
Requirements engineering iv
Requirements engineering ivRequirements engineering iv
Requirements engineering ivindrisrozas
 
Unit IV Software Engineering
Unit IV Software EngineeringUnit IV Software Engineering
Unit IV Software EngineeringNandhini S
 
Requirement analysis and specification, software engineering
Requirement analysis and specification, software engineeringRequirement analysis and specification, software engineering
Requirement analysis and specification, software engineeringRupesh Vaishnav
 
Ppt ooad ooad3unit
Ppt ooad ooad3unitPpt ooad ooad3unit
Ppt ooad ooad3unitramyalaksha
 
Designing and documenting software architecture unit 5
Designing and documenting software architecture unit 5Designing and documenting software architecture unit 5
Designing and documenting software architecture unit 5Sudarshan Dhondaley
 
Software Engineering : OOAD using UML
Software Engineering : OOAD using UMLSoftware Engineering : OOAD using UML
Software Engineering : OOAD using UMLAjit Nayak
 
Chapter 4_Introduction to Patterns.ppt
Chapter 4_Introduction to Patterns.pptChapter 4_Introduction to Patterns.ppt
Chapter 4_Introduction to Patterns.pptRushikeshChikane1
 
Chapter 4_Introduction to Patterns.ppt
Chapter 4_Introduction to Patterns.pptChapter 4_Introduction to Patterns.ppt
Chapter 4_Introduction to Patterns.pptRushikeshChikane2
 
Software enginering.group-no-11 (1)
Software enginering.group-no-11 (1)Software enginering.group-no-11 (1)
Software enginering.group-no-11 (1)riarana10
 
Object-Oriented Systems Analysis and Design Using UML.pptx
Object-Oriented Systems Analysis and Design Using UML.pptxObject-Oriented Systems Analysis and Design Using UML.pptx
Object-Oriented Systems Analysis and Design Using UML.pptxXanGwaps
 

Similar to Analysis (20)

Transition from Systems Analysis to Systems Designs
Transition from Systems Analysis to Systems DesignsTransition from Systems Analysis to Systems Designs
Transition from Systems Analysis to Systems Designs
 
oomd-unit-i-cgpa.ppt
oomd-unit-i-cgpa.pptoomd-unit-i-cgpa.ppt
oomd-unit-i-cgpa.ppt
 
Requirements engineering iv
Requirements engineering ivRequirements engineering iv
Requirements engineering iv
 
Unit IV Software Engineering
Unit IV Software EngineeringUnit IV Software Engineering
Unit IV Software Engineering
 
Unit 2
Unit 2Unit 2
Unit 2
 
RRC AD
RRC ADRRC AD
RRC AD
 
Requirement analysis and specification, software engineering
Requirement analysis and specification, software engineeringRequirement analysis and specification, software engineering
Requirement analysis and specification, software engineering
 
ppt_ooad.pdf
ppt_ooad.pdfppt_ooad.pdf
ppt_ooad.pdf
 
Ppt ooad ooad3unit
Ppt ooad ooad3unitPpt ooad ooad3unit
Ppt ooad ooad3unit
 
Software Design - SDLC Model
Software Design - SDLC ModelSoftware Design - SDLC Model
Software Design - SDLC Model
 
Designing and documenting software architecture unit 5
Designing and documenting software architecture unit 5Designing and documenting software architecture unit 5
Designing and documenting software architecture unit 5
 
unit2.pptx
unit2.pptxunit2.pptx
unit2.pptx
 
Requirements analysis lecture
Requirements analysis lectureRequirements analysis lecture
Requirements analysis lecture
 
Software Engineering : OOAD using UML
Software Engineering : OOAD using UMLSoftware Engineering : OOAD using UML
Software Engineering : OOAD using UML
 
Software Design Concepts
Software Design ConceptsSoftware Design Concepts
Software Design Concepts
 
Chapter 4_Introduction to Patterns.ppt
Chapter 4_Introduction to Patterns.pptChapter 4_Introduction to Patterns.ppt
Chapter 4_Introduction to Patterns.ppt
 
Chapter 4_Introduction to Patterns.ppt
Chapter 4_Introduction to Patterns.pptChapter 4_Introduction to Patterns.ppt
Chapter 4_Introduction to Patterns.ppt
 
Software enginering.group-no-11 (1)
Software enginering.group-no-11 (1)Software enginering.group-no-11 (1)
Software enginering.group-no-11 (1)
 
Object-Oriented Systems Analysis and Design Using UML.pptx
Object-Oriented Systems Analysis and Design Using UML.pptxObject-Oriented Systems Analysis and Design Using UML.pptx
Object-Oriented Systems Analysis and Design Using UML.pptx
 
Cs8592 ooad unit 1
Cs8592 ooad unit 1Cs8592 ooad unit 1
Cs8592 ooad unit 1
 

More from Preeti Mishra

Effective Ways to Conduct Programming labs
Effective Ways to Conduct Programming labsEffective Ways to Conduct Programming labs
Effective Ways to Conduct Programming labsPreeti Mishra
 
Unit 8 software quality and matrices
Unit 8 software quality and matricesUnit 8 software quality and matrices
Unit 8 software quality and matricesPreeti Mishra
 
Unit 5 design engineering ssad
Unit 5 design engineering ssadUnit 5 design engineering ssad
Unit 5 design engineering ssadPreeti Mishra
 
architectural design
 architectural design architectural design
architectural designPreeti Mishra
 
Oo concepts and class modeling
Oo concepts and class modelingOo concepts and class modeling
Oo concepts and class modelingPreeti Mishra
 
Unit 7 performing user interface design
Unit 7 performing user interface designUnit 7 performing user interface design
Unit 7 performing user interface designPreeti Mishra
 
testing strategies and tactics
 testing strategies and tactics testing strategies and tactics
testing strategies and tacticsPreeti Mishra
 
requirements analysis and design
requirements analysis and designrequirements analysis and design
requirements analysis and designPreeti Mishra
 
Design process interaction design basics
Design process interaction design basicsDesign process interaction design basics
Design process interaction design basicsPreeti Mishra
 
Design process design rules
Design process  design rulesDesign process  design rules
Design process design rulesPreeti Mishra
 
Design process evaluating interactive_designs
Design process  evaluating interactive_designsDesign process  evaluating interactive_designs
Design process evaluating interactive_designsPreeti Mishra
 
Foundations understanding users and interactions
Foundations  understanding users and interactionsFoundations  understanding users and interactions
Foundations understanding users and interactionsPreeti Mishra
 

More from Preeti Mishra (20)

Effective Ways to Conduct Programming labs
Effective Ways to Conduct Programming labsEffective Ways to Conduct Programming labs
Effective Ways to Conduct Programming labs
 
Uml intro
Uml introUml intro
Uml intro
 
Component diagram
Component diagramComponent diagram
Component diagram
 
Activity diag
Activity diagActivity diag
Activity diag
 
Object diagram
Object diagramObject diagram
Object diagram
 
Sequence diagrams
Sequence diagramsSequence diagrams
Sequence diagrams
 
State chart diagram
State chart diagramState chart diagram
State chart diagram
 
Use case Diagram
Use case DiagramUse case Diagram
Use case Diagram
 
Unit 8 software quality and matrices
Unit 8 software quality and matricesUnit 8 software quality and matrices
Unit 8 software quality and matrices
 
Unit 5 design engineering ssad
Unit 5 design engineering ssadUnit 5 design engineering ssad
Unit 5 design engineering ssad
 
architectural design
 architectural design architectural design
architectural design
 
Oo concepts and class modeling
Oo concepts and class modelingOo concepts and class modeling
Oo concepts and class modeling
 
Unit 7 performing user interface design
Unit 7 performing user interface designUnit 7 performing user interface design
Unit 7 performing user interface design
 
testing strategies and tactics
 testing strategies and tactics testing strategies and tactics
testing strategies and tactics
 
requirements analysis and design
requirements analysis and designrequirements analysis and design
requirements analysis and design
 
Design process interaction design basics
Design process interaction design basicsDesign process interaction design basics
Design process interaction design basics
 
Design process design rules
Design process  design rulesDesign process  design rules
Design process design rules
 
Design process evaluating interactive_designs
Design process  evaluating interactive_designsDesign process  evaluating interactive_designs
Design process evaluating interactive_designs
 
Foundations understanding users and interactions
Foundations  understanding users and interactionsFoundations  understanding users and interactions
Foundations understanding users and interactions
 
IntrIntroduction
IntrIntroductionIntrIntroduction
IntrIntroduction
 

Recently uploaded

Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...Call Girls in Nagpur High Profile
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Christo Ananth
 
Thermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.pptThermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.pptDineshKumar4165
 
data_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfdata_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfJiananWang21
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Call Girls in Nagpur High Profile
 
VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...
VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...
VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...SUHANI PANDEY
 
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Christo Ananth
 
Glass Ceramics: Processing and Properties
Glass Ceramics: Processing and PropertiesGlass Ceramics: Processing and Properties
Glass Ceramics: Processing and PropertiesPrabhanshu Chaturvedi
 
Online banking management system project.pdf
Online banking management system project.pdfOnline banking management system project.pdf
Online banking management system project.pdfKamal Acharya
 
UNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its PerformanceUNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its Performancesivaprakash250
 
UNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular ConduitsUNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular Conduitsrknatarajan
 
University management System project report..pdf
University management System project report..pdfUniversity management System project report..pdf
University management System project report..pdfKamal Acharya
 
chapter 5.pptx: drainage and irrigation engineering
chapter 5.pptx: drainage and irrigation engineeringchapter 5.pptx: drainage and irrigation engineering
chapter 5.pptx: drainage and irrigation engineeringmulugeta48
 
Intze Overhead Water Tank Design by Working Stress - IS Method.pdf
Intze Overhead Water Tank  Design by Working Stress - IS Method.pdfIntze Overhead Water Tank  Design by Working Stress - IS Method.pdf
Intze Overhead Water Tank Design by Working Stress - IS Method.pdfSuman Jyoti
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756dollysharma2066
 
Generative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPTGenerative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPTbhaskargani46
 

Recently uploaded (20)

Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
 
Thermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.pptThermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.ppt
 
data_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfdata_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdf
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
 
VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...
VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...
VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...
 
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
 
Glass Ceramics: Processing and Properties
Glass Ceramics: Processing and PropertiesGlass Ceramics: Processing and Properties
Glass Ceramics: Processing and Properties
 
Online banking management system project.pdf
Online banking management system project.pdfOnline banking management system project.pdf
Online banking management system project.pdf
 
UNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its PerformanceUNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its Performance
 
Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024
 
UNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular ConduitsUNIT-II FMM-Flow Through Circular Conduits
UNIT-II FMM-Flow Through Circular Conduits
 
NFPA 5000 2024 standard .
NFPA 5000 2024 standard                                  .NFPA 5000 2024 standard                                  .
NFPA 5000 2024 standard .
 
(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7
(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7
(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7
 
University management System project report..pdf
University management System project report..pdfUniversity management System project report..pdf
University management System project report..pdf
 
chapter 5.pptx: drainage and irrigation engineering
chapter 5.pptx: drainage and irrigation engineeringchapter 5.pptx: drainage and irrigation engineering
chapter 5.pptx: drainage and irrigation engineering
 
Intze Overhead Water Tank Design by Working Stress - IS Method.pdf
Intze Overhead Water Tank  Design by Working Stress - IS Method.pdfIntze Overhead Water Tank  Design by Working Stress - IS Method.pdf
Intze Overhead Water Tank Design by Working Stress - IS Method.pdf
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
 
Roadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and RoutesRoadmap to Membership of RICS - Pathways and Routes
Roadmap to Membership of RICS - Pathways and Routes
 
Generative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPTGenerative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPT
 

Analysis

  • 3. Introduction • System development is model building • Starts when a requirement of system identified • Specification can be used for contract and to plan and control the development process • As Complex process handle poorly so any systematic method like structured or OOAM can used from start to end of system life cycle
  • 4. Introduction • Selecting a methodology is not simple, as no one methodology is always best. • Many organizations have their own standards. • Systems nature, constraints, and rules playing a major rule in deciding which methodology to use • Your experience as analyst is important to compare and decide which methodology to use
  • 5. Structured Analysis and Design Vs OO Analysis and Design • Structured analysis is a traditional systems development technique that is time-tested and easy to understand. • Structured analysis uses a set of process models to describe a system graphically. • Because it focuses on processes that transform data into information, structured analysis is called a process- centered technique • Whereas structured analysis treats processes and data as separate components, object-oriented analysis combines data and the processes that act on the data into things called objects. • System analysts use O-O to model real world business processes and operation. • The result is a set of software objects that represent actual people, things, transactions and events
  • 7. Structured analysis and design – Advantages of Structured analysis and design • visual, so it is easier for users/programmers to understand • Makes good use of graphical tools • A mature technique • Process-oriented approach is a natural way of thinking • simple and easy to understand and impalement
  • 8. Disadvantages of Structured analysis and design • Not enough user-analyst interaction • It depends on dividing system to sub systems but it is to decide when to stop decomposing
  • 10. Basic Concepts of Object Orientation (Few of them Already Studied) • Object • Class • Attribute • Operation • Interface (Polymorphism) • Component • Package • Subsystem • Relationships
  • 11. Systems Development Methodologies Object-Oriented analysis and design – Object-Oriented analysis and design becoming popular because of its ability to thoroughly: • represent complex relationships, • as well as represent data and data processing with a consistent notation – Object-Oriented analysis and design blend analysis and design in evolutionary process – It allows you to deal with the complexity inherent in a real-world problem by focusing on the essential and interesting features of an application
  • 12. Systems Development Methodologies Object-Oriented analysis and design – Process of progressively developing representation of a system component (or object) through the phases of: • analysis, • design and • implementation – The model is abstract in the early stages – As the model evolves, it becomes more and more detailed
  • 13. Object-Oriented systems development life cycle • Object-Oriented analysis and design • object representation through three phases – analysis, – design, and – implementation
  • 14.
  • 16. Analysis Phase – Object-oriented analysis is a popular approach that sees a system from the viewpoint of the objects themselves as they function and interact – Model of the real-world application is developed showing its important properties – Model specifies the functional behavior of the system independent of implementation details
  • 17. Design Phase – Design Phase • Analysis model is refined and adapted to the environment • Can be separated into two stages – System design » Concerned with overall system architecture – Object design » Implementation details are added to system design
  • 18. Implementation Phase – Implementation Phase • Design is implemented using a programming language and/ or database management system
  • 19. Testing Phase follows.. • Testing Process – Unit – Integration – System
  • 20.
  • 22. Introduction • The analysis phase defines the requirements of the system, independent of how these requirements will be accomplished. • This phase defines the problem that the customer is trying to solve. • The deliverable result at the end of this phase is a requirement document. Ideally, this document states in a clear and precise fashion what is to be built. • This analysis represents the ``what'' phase. • The requirement document tries to capture the requirements from the customer's perspective by defining goals and interactions at a level removed from the implementation details.
  • 23. Object Oriented Analysis • We use UML (Unified Modeling Language) to represent the analysis details. • Following models are used to model the Object Oriented Analysis using UML – Use Case Diagram – Class diagram
  • 24.
  • 26. What is a domain model? • “A domain model captures the most important types of objects in the context of the business. The domain model represents the ‘things’ that exist or events that transpire in the business environment.” – I. Jacobsen
  • 27. What is a Domain Model? • Illustrates meaningful conceptual classes in problem domain • Represents real-world concepts, not software components
  • 28. Why do a domain model? • Gives a conceptual framework of the things in the problem space • Helps you think – focus on semantics • Provides a glossary of terms – noun based • It is a static view - meaning it allows us convey time invariant business rules • Foundation for use case/workflow modelling • Based on the defined structure, we can describe the state of the problem domain at any time.
  • 29. Features of a domain model • The following features enable us to express time invariant static business rules for a domain:- o Domain classes – each domain class denotes a type of object. o Attributes – an attribute is the description of a named slot of a specified type in a domain class; each instance of the class separately holds a value. o Associations – an association is a relationship between two (or more) domain classes that describes links between their object instances. Associations can have roles, describing the multiplicity and participation of a class in the relationship. o Additional rules – complex rules that cannot be shown with symbology can be shown with attached notes.
  • 30.
  • 31. Identifying Domain Classes from Problem Statement
  • 32. How to Draw Domain Model • Reuse an existing domain model – There are many published, well-crafted domain models. • •Use a conceptual class category list – Make a list of all candidate conceptual classes • •Identify noun phrases – Identify nouns and phrases in textual descriptions of a domain ( use cases, or other documents)
  • 33. Domain classes? • Each domain class denotes a type of object. It is a descriptor for a set of things that share common features. Classes can be:- o Business objects - represent things that are manipulated in the business e.g. Order. o Real world objects – things that the business keeps track of e.g. Contact, Site. o Events that transpire - e.g. sale and payment. • A domain class has attributes and associations with other classes • It is important that a domain class is given a good description
  • 34. There are different types of Objects • Entity Objects – Represent the persistent information tracked by the system (Application domain objects, also called “Business objects”) • Boundary Objects – Represent the interaction between the user and the system • Control Objects – Represent the control tasks performed by the system.
  • 35. Year Month Day ChangeDate Button LCDDisplay Entity Objects Control Object Boundary Objects To distinguish different object types in a model we can use the UML Stereotype mechanism
  • 36. Class Identification Class identification is crucial to object- oriented modeling – Helps to identify the important entities of a system • Basic assumptions: 1. We can find the classes for a new software system (Forward Engineering) 2. We can identify the classes in an existing system (Reverse Engineering) • Why can we do this? – Philosophy, science, experimental evidence.
  • 37. Class Identification • Approaches – Application domain approach • Ask application domain experts to identify relevant abstractions – Syntactic approach • Start with use cases • Analyze the text to identify the objects • Extract participating objects from flow of events – Design patterns approach • Use reusable design patterns – Component-based approach • Identify existing solution classes.
  • 38. Ways to find Objects • Syntactical investigation with Abbot‘s technique: – Flow of events in use cases – Problem statement • Use other knowledge sources: – Application knowledge: End users and experts know the abstractions of the application domain – Solution knowledge: Abstractions in the solution domain – General world knowledge: Your generic knowledge and intution
  • 39. Class identification is a Hard Problem • One problem: Definition of the system boundary: – Which abstractions are outside, which abstractions are inside the system boundary? • Actors are outside the system • Classes/Objects are inside the system. • An other problem: Classes/Objects are not just found by taking a picture of a scene or domain – The application domain has to be analyzed – Depending on the purpose of the system different objects might be found • How can we identify the purpose of a system? • Scenarios and use cases => Functional model
  • 40. Steps for Domain Classes 1. Make a list of potential objects by finding out the nouns and noun phrases from narrative problem statement 2. Apply subject matter expertise (or domain knowledge) to identify additional classes 3. Filter out the redundant or irrelevant classes 4. Classify all potential objects based on categories. 5. Group the objects based on similar attributes. While grouping we should remember that Different nouns (or noun phrases) can actually refer to the same thing (examples: house, home, abode) 6. Same nouns (or noun phrases) could refer to different things or concepts (example: I go to school every day / This school of thought agrees with the theory) 7. Give related names to each group to generate the final list of top level classes Iterate over to refine the list of classes
  • 41. Listing Noun Phrases • An obvious way to identify domain classes is to identify nouns and phrases in textual descriptions of a domain. • Consider a use case description as follows:- 1. Customer arrives at a checkout with goods and/or services to purchase. 2. Cashier starts a new sale. 3. Cashier enters item identifier. 4. System records the sale line item and presents the item description, price and running total.
  • 42. Where to identify conceptual classes from noun phrases • Vision and Scope, Glossary and Use Cases are good for this type of linguistic analysis • However: – •Words may be ambiguous or synonymous – •Noun phrases may also be attributes or parameters rather than classes: • If it stores state information or it has multiple behaviors, then it’s a class • If it’s just a number or a string, then it’s probably an attribute
  • 43. Few Hints.. Categories Explanation People Humans who carry out some function Places Areas set aside for people or things Things Physical objects Organizations Collection of people, resources, facilities and capabilities having a defined mission Concepts Principles or Ideas not tangible Events Things that happen (usually at a given date and time), or as a steps in an ordered sequence
  • 44. Identifying attributes ? • A domain class sounds like an attribute if: - o It relies on an associated class for it’s identity – e.g. ‘order number’ class associated to an ‘order’ class. The ‘order number’ sounds suspiciously like an attribute of ‘order’. o It is a simple data type – e.g. ‘order number’ is a simple integer. Now it really sounds like an attribute!
  • 45.
  • 46. Combining the learning Perform the following in very short iterations: o Make a list of candidate domain classes. o Draw these classes in a UML class diagram. o If possible, add brief descriptions for the classes. o Identify any associations that are necessary. o Decide if some domain classes are really just attributes. o Where helpful, identify role names and multiplicity for associations. o Add any additional static rules as UML notes that cannot be conveyed with UML symbols. o Group diagrams/domain classes by category into packages. Concentrate more on just identifying domain classes in early iterations !
  • 47. Steps in Generating Class Diagrams 1. Class identification (textual analysis, domain expert) 2. Identification of attributes and operations (sometimes before the classes are found!) 3. Identification of associations between classes 4. Identification of multiplicities 5. Identification of roles 6. Identification of inheritance
  • 49. Who uses Class Diagrams? • Purpose of class diagrams – The description of the static properties of a system • The main users of class diagrams: – The application domain expert • uses class diagrams to model the application domain (including taxonomies) – during requirements elicitation and analysis – The developer • uses class diagrams during the development of a system – during analysis, system design, object design and implementation.
  • 50. Who does not use Class Diagrams? • The client and the end user are usually not interested in class diagrams – Clients focus more on project management issues – End users are more interested in the functionality of the system.
  • 51. Developers have different Views on Class Diagrams • According to the development activity, a developer plays different roles: – Analyst – System Designer – Object Designer – Implementor • Each of these roles has a different view about the class diagram (the object model).
  • 52.
  • 53. An overview of OOSE development activities and their products Requirements elicitation Analysis System design problem statement functional model nonfunctional requirements analysis object model dynamic model class diagram use case diagram statechart diagram sequence diagram