SlideShare una empresa de Scribd logo
1 de 22
Descargar para leer sin conexión
CST 205 Object Oriented Programming using Java
CST 281 Object Oriented Programming
(As per KTU 2019 Syllabus)
Module 1, Lecture 3
Module 1
► Approaches to Software Design. Functional Oriented Design, Object
Oriented Design, Case Study of Automated Fire Alarm System
► Object Modeling Using Unified Modeling Language. Basic Object Oriented
concepts, UML diagrams, Use case model, Class diagram, Interaction diagram,
Activity diagram, State chart diagram
► Introduction to Java Java programming. Environment and Runtime
Environment, Development Platforms - Standard, Enterprise. Java Virtual
Machine, Java compiler, Bytecode, Java applet Java Buzzwords, Java program
structure, Comments, Garbage Collection, Lexical Issues
Unified Modeling Language (UML)
● UML (Unified Modeling Language) is a general-purpose, graphical modeling
language in the field of Software Engineering
● Developed to help system and software developers for specifying, visualizing,
constructing, and documenting the artifacts of software systems
● UML was created by the Object Management Group (OMG)
● UML is not a programming language, it is rather a visual language.
● UML is a visual language for developing software blueprints (designs).
● For example, while constructing buildings, a designer or architect develops the
building blueprints. Similarly, we can also develop blueprints for a software
system.
Unified Modeling Language (UML)
● UML is the most commonly and frequently used language for building software
system blueprints
● UML can be used for business modeling and other non software systems
● In UML there are a lot of different diagrams to get used to.
● The reason for this is that it is possible to look at a system from many different
viewpoints of the stakeholders.
● A software development will have many stakeholders playing a part
○ Analysts
○ Designers
○ Coders
○ Testers
○ Quality Assurance
○ The Customer
○ Technical Authors
UML Diagrams
● UML is linked with object
oriented design and
analysis
● Structure Diagrams :
Capture static aspects or
structure of a system
● Behavior Diagrams:
Capture dynamic aspects
or behavior of the system
Use Case Diagram
● A UML use case diagram is the primary form of system/software requirements.
● It is a behavior diagram to illustrate a set of actions or use cases that a system
can perform in tandem with one or more external users of the system (actors)
● The purpose of a use case diagram in UML is to demonstrate the different ways
that a user might interact with a system.
● It is an effective technique for communicating system behavior in the user's terms
by specifying all externally visible system behavior.
● It does not show the order in which steps are performed to achieve the goals of
each use case.
● Use case diagrams are typically developed in the early stage of development
○ Developed by analysts together with domain experts to gather the requirements of a system.
○ Identify the external and internal factors influencing the system.
○ Show the interaction among the requirements and actors
○ Can be used to validate a systems architecture
○ Drive implementation and generate test cases
Is it really needed?
Use Case Diagram - Actor
● Represent “stick man” icon.
● One actor can be associated with multiple
use cases in the system
● Actor is someone who interacts with use
case (system function).
● Actor is an outsider to the system
boundary who plays a role in the operating
the system/business.
● Actor triggers use case(s). Actor is not an
insider to the system.
● Actor has a responsibility toward the
system (inputs), and Actor has
expectations from the system (outputs).
Use Case Diagram - Use case
● Horizontally shaped ovals that represent the different uses that a user might have
● A use case represents a distinct functionality of a system, a component, a
package, or a class
● Represents a system function (automated or manual)
● Each Actor must be linked to a use case, while some use cases may not be linked
to actors.
Structuring use case diagrams with relationship
There can be 5 relationship types in a use
case diagram.
1. Association between actor and use
case
2. Generalization of a use case
3. Generalization of an actor
4. Extend between two use cases
5. Include between two use cases
Use Case Diagram - Association
● A line between actors and use cases
● The participation of an actor in a use case is shown by connecting an actor
to a use case by a solid link.
● An actor must be associated with at least one use case
● Actors may be connected to use cases by associations, indicating that the
actor and the use case communicate with one another using messages.
● UML allows the use of multiplicity (cardinality) at one or both ends of
association between the actor and the use case
Generalization of an Actor
● Generalization of an actor means that one actor can inherit the role of the other
actor.
● The descendant inherits all the use cases of the ancestor.
● The descendant has one or more use cases that are specific to that role.
● In the example, how many use cases are there for NFRC customer?
Use case Generalization
● A use-case-generalization is a directed relationship from a
child use case to a parent use case, specifying how a child
can specialize all behavior and characteristics described for
the parent
● A parent use case may be specialized into one or more child
use cases that represent more specific forms of the parent.
● Neither parent nor child is necessarily abstract, although the
parent in most cases is abstract.
● A child inherits all structure, behavior, and relationships of
the parent.
Extend relationship between two use cases
● Extend is a directed relationship that specifies how and when the behavior defined in
extending (optional) use case can be inserted into the the extended use case.
● The extending use case is dependent on the extended (base) use case.
● The extended (base) use case must be meaningful on its own.
● The optional extending use case is triggered conditionally at an extension point.
● An extension point is a feature of an extended use case, by which it decides to extend its
functionality by inserting the extending use case.
● Extension points may be shown in a compartment of the use case oval symbol under the
heading extension points. Each extension point must have a name.
Include relationship between two use cases
● Use case include is a directed relationship between two use
cases which is used to show that behavior of the included
use case is inserted into the behavior of the including use
case
● Include relationship show that the behaviour of the included
use case is part of the including (base) use case.
● The main reason for this is to reuse the common actions
across multiple use cases and to simplify complex use
cases.
● The base use case is incomplete without the included
use case.
● The included use case is mandatory and not optional.
Use Case Diagram - System boundary
● An optional box that sets a system scope to use cases.
● All use cases outside the box would be considered outside the scope of that
system. If no box is given, all use cases are within the system scope.
● The system boundary is potentially the entire system as defined in the
requirements document.
● For large and complex systems, each module may be the system boundary.
Use case diagram - Packages
● Packages are optional UML constructs that enable you to organize model
elements (such as use cases) into groups.
● Packages are depicted as file folders and can be used on any of the UML
diagrams, including both use case diagrams and class diagrams
Business Use Case modeling notations
● Support for business modeling is declared as a goal of UML, but UML specification does
not provide any notations for business use cases.
● Business use cases were introduced in Rational Unified Process (RUP).
● Business use case should produce a result of observable value to a business actor.
● Defines what happens in the business when the use case is requested by business
actor, it describes complete workflow or business process.
● Business use case is represented in RUP with use case oval and a line crossing it.
● Business Actor is represented in RUP by "stick man" icon with a line crossing its
head.
● Not defined in UML specification.
Use case diagram of a Hospital Management System
END OF LECTURE 3
References
● Rajib Mall, Fundamentals of Software Engineering, 4th edition, PHI, 2014.
● UML Diagrams - www.uml-diagrams.org
● GeeksforGeeks - www.geeksforgeeks.org
● Wikipedia - www.wikipedia.org
● Tutorialspoint - www.tutorialspoint.com
● Disclaimer - This document contains images/texts from various internet
sources. Copyright belongs to the respective content creators. Document is
compiled exclusively for study purpose and shall not be used for commercial
purpose.

Más contenido relacionado

Similar a Lecture 3 cst205 cst281-oop

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 diagramFarah Ahmed
 
analysis and design with uml
analysis and design with umlanalysis and design with uml
analysis and design with umlsabin kafle
 
Modeling software with UML
Modeling software with UMLModeling software with UML
Modeling software with UML6020 peaks
 
Software Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdfSoftware Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdfMeagGhn
 
Darshan sem4 140703_ooad_2014 (diagrams)
Darshan sem4 140703_ooad_2014 (diagrams)Darshan sem4 140703_ooad_2014 (diagrams)
Darshan sem4 140703_ooad_2014 (diagrams)Gajeshwar Bahekar
 
Unified Modeling Language (UML), Object-Oriented Programming Concepts & Desig...
Unified Modeling Language (UML), Object-Oriented Programming Concepts & Desig...Unified Modeling Language (UML), Object-Oriented Programming Concepts & Desig...
Unified Modeling Language (UML), Object-Oriented Programming Concepts & Desig...Isuru Perera
 
[RPL2] Pertemuan 3 - UML dan USECASE VIEW
[RPL2] Pertemuan 3 - UML dan USECASE VIEW[RPL2] Pertemuan 3 - UML dan USECASE VIEW
[RPL2] Pertemuan 3 - UML dan USECASE VIEWrizki adam kurniawan
 
Unit-II(STATIC UML DIAGRAMS).ppt
Unit-II(STATIC UML DIAGRAMS).pptUnit-II(STATIC UML DIAGRAMS).ppt
Unit-II(STATIC UML DIAGRAMS).pptganeshkarthy
 
Use case Diagram
Use case Diagram Use case Diagram
Use case Diagram Rahul Pola
 
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)Dr Sukhpal Singh Gill
 
Presentation Use Case Diagram and Use Case Specification.pptx
Presentation Use Case Diagram and Use Case Specification.pptxPresentation Use Case Diagram and Use Case Specification.pptx
Presentation Use Case Diagram and Use Case Specification.pptxazida3
 
8.Unified Process Modelling.ppt of software engg
8.Unified Process Modelling.ppt  of software engg8.Unified Process Modelling.ppt  of software engg
8.Unified Process Modelling.ppt of software enggSukhmanSingh91
 
SELECT21.pptx
SELECT21.pptxSELECT21.pptx
SELECT21.pptxdevnasra1
 
CASE Tools lab.ppt
CASE Tools lab.pptCASE Tools lab.ppt
CASE Tools lab.pptRAJESH S
 

Similar a Lecture 3 cst205 cst281-oop (20)

Use case diagram
Use case diagramUse case diagram
Use case diagram
 
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
 
analysis and design with uml
analysis and design with umlanalysis and design with uml
analysis and design with uml
 
Modeling software with UML
Modeling software with UMLModeling software with UML
Modeling software with UML
 
Software Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdfSoftware Engineering Tools and Practices.pdf
Software Engineering Tools and Practices.pdf
 
Darshan sem4 140703_ooad_2014 (diagrams)
Darshan sem4 140703_ooad_2014 (diagrams)Darshan sem4 140703_ooad_2014 (diagrams)
Darshan sem4 140703_ooad_2014 (diagrams)
 
Unified Modeling Language (UML), Object-Oriented Programming Concepts & Desig...
Unified Modeling Language (UML), Object-Oriented Programming Concepts & Desig...Unified Modeling Language (UML), Object-Oriented Programming Concepts & Desig...
Unified Modeling Language (UML), Object-Oriented Programming Concepts & Desig...
 
[RPL2] Pertemuan 3 - UML dan USECASE VIEW
[RPL2] Pertemuan 3 - UML dan USECASE VIEW[RPL2] Pertemuan 3 - UML dan USECASE VIEW
[RPL2] Pertemuan 3 - UML dan USECASE VIEW
 
Uml
UmlUml
Uml
 
Uml
UmlUml
Uml
 
Unit-II(STATIC UML DIAGRAMS).ppt
Unit-II(STATIC UML DIAGRAMS).pptUnit-II(STATIC UML DIAGRAMS).ppt
Unit-II(STATIC UML DIAGRAMS).ppt
 
Use case Diagram
Use case Diagram Use case Diagram
Use case Diagram
 
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
 
Introduction to OOAD
Introduction to OOADIntroduction to OOAD
Introduction to OOAD
 
Presentation Use Case Diagram and Use Case Specification.pptx
Presentation Use Case Diagram and Use Case Specification.pptxPresentation Use Case Diagram and Use Case Specification.pptx
Presentation Use Case Diagram and Use Case Specification.pptx
 
Ch 2.1
Ch 2.1Ch 2.1
Ch 2.1
 
8.Unified Process Modelling.ppt of software engg
8.Unified Process Modelling.ppt  of software engg8.Unified Process Modelling.ppt  of software engg
8.Unified Process Modelling.ppt of software engg
 
SELECT21.pptx
SELECT21.pptxSELECT21.pptx
SELECT21.pptx
 
CASE Tools lab.ppt
CASE Tools lab.pptCASE Tools lab.ppt
CASE Tools lab.ppt
 
02 use cases
02 use cases02 use cases
02 use cases
 

Más de ktuonlinenotes

Oop suplemnertary september 2019
Oop suplemnertary september  2019Oop suplemnertary september  2019
Oop suplemnertary september 2019ktuonlinenotes
 
Oop r&s may 2019 (2)
Oop r&s may 2019 (2)Oop r&s may 2019 (2)
Oop r&s may 2019 (2)ktuonlinenotes
 
Module 1 uml - usecase digram
Module 1   uml - usecase digramModule 1   uml - usecase digram
Module 1 uml - usecase digramktuonlinenotes
 
Module 1 uml - interaction diagram
Module 1   uml - interaction diagramModule 1   uml - interaction diagram
Module 1 uml - interaction diagramktuonlinenotes
 
Lecture 4-oop class diagram
Lecture 4-oop class diagramLecture 4-oop class diagram
Lecture 4-oop class diagramktuonlinenotes
 
Lecture1 cst205 cst281-oop
Lecture1 cst205 cst281-oopLecture1 cst205 cst281-oop
Lecture1 cst205 cst281-oopktuonlinenotes
 
Lecture 2 cst 205-281 oop
Lecture 2   cst 205-281 oopLecture 2   cst 205-281 oop
Lecture 2 cst 205-281 oopktuonlinenotes
 

Más de ktuonlinenotes (12)

Oop suplemnertary september 2019
Oop suplemnertary september  2019Oop suplemnertary september  2019
Oop suplemnertary september 2019
 
Oop sample ktu
Oop sample ktuOop sample ktu
Oop sample ktu
 
Oop r&s may 2019
Oop r&s may 2019Oop r&s may 2019
Oop r&s may 2019
 
Oop r&s may 2019 (2)
Oop r&s may 2019 (2)Oop r&s may 2019 (2)
Oop r&s may 2019 (2)
 
Oop july 2017
Oop july 2017Oop july 2017
Oop july 2017
 
Oop december 2018
Oop december 2018Oop december 2018
Oop december 2018
 
Oop april 2018
Oop april 2018Oop april 2018
Oop april 2018
 
Module 1 uml - usecase digram
Module 1   uml - usecase digramModule 1   uml - usecase digram
Module 1 uml - usecase digram
 
Module 1 uml - interaction diagram
Module 1   uml - interaction diagramModule 1   uml - interaction diagram
Module 1 uml - interaction diagram
 
Lecture 4-oop class diagram
Lecture 4-oop class diagramLecture 4-oop class diagram
Lecture 4-oop class diagram
 
Lecture1 cst205 cst281-oop
Lecture1 cst205 cst281-oopLecture1 cst205 cst281-oop
Lecture1 cst205 cst281-oop
 
Lecture 2 cst 205-281 oop
Lecture 2   cst 205-281 oopLecture 2   cst 205-281 oop
Lecture 2 cst 205-281 oop
 

Último

ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxAreebaZafar22
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...Poonam Aher Patil
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the ClassroomPooky Knightsmith
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17Celine George
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsMebane Rash
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.pptRamjanShidvankar
 
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxCOMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxannathomasp01
 
Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jisc
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structuredhanjurrannsibayan2
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfAdmir Softic
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...ZurliaSoop
 
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Pooja Bhuva
 
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptxExploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptxPooja Bhuva
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxRamakrishna Reddy Bijjam
 
REMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptxREMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptxDr. Ravikiran H M Gowda
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsKarakKing
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfSherif Taha
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibitjbellavia9
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - Englishneillewis46
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxJisc
 

Último (20)

ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the Classroom
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxCOMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
 
Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structure
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
 
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptxExploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
 
Python Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docxPython Notes for mca i year students osmania university.docx
Python Notes for mca i year students osmania university.docx
 
REMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptxREMIFENTANIL: An Ultra short acting opioid.pptx
REMIFENTANIL: An Ultra short acting opioid.pptx
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - English
 
Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptx
 

Lecture 3 cst205 cst281-oop

  • 1. CST 205 Object Oriented Programming using Java CST 281 Object Oriented Programming (As per KTU 2019 Syllabus) Module 1, Lecture 3
  • 2. Module 1 ► Approaches to Software Design. Functional Oriented Design, Object Oriented Design, Case Study of Automated Fire Alarm System ► Object Modeling Using Unified Modeling Language. Basic Object Oriented concepts, UML diagrams, Use case model, Class diagram, Interaction diagram, Activity diagram, State chart diagram ► Introduction to Java Java programming. Environment and Runtime Environment, Development Platforms - Standard, Enterprise. Java Virtual Machine, Java compiler, Bytecode, Java applet Java Buzzwords, Java program structure, Comments, Garbage Collection, Lexical Issues
  • 3. Unified Modeling Language (UML) ● UML (Unified Modeling Language) is a general-purpose, graphical modeling language in the field of Software Engineering ● Developed to help system and software developers for specifying, visualizing, constructing, and documenting the artifacts of software systems ● UML was created by the Object Management Group (OMG) ● UML is not a programming language, it is rather a visual language. ● UML is a visual language for developing software blueprints (designs). ● For example, while constructing buildings, a designer or architect develops the building blueprints. Similarly, we can also develop blueprints for a software system.
  • 4. Unified Modeling Language (UML) ● UML is the most commonly and frequently used language for building software system blueprints ● UML can be used for business modeling and other non software systems ● In UML there are a lot of different diagrams to get used to. ● The reason for this is that it is possible to look at a system from many different viewpoints of the stakeholders. ● A software development will have many stakeholders playing a part ○ Analysts ○ Designers ○ Coders ○ Testers ○ Quality Assurance ○ The Customer ○ Technical Authors
  • 5. UML Diagrams ● UML is linked with object oriented design and analysis ● Structure Diagrams : Capture static aspects or structure of a system ● Behavior Diagrams: Capture dynamic aspects or behavior of the system
  • 6.
  • 7. Use Case Diagram ● A UML use case diagram is the primary form of system/software requirements. ● It is a behavior diagram to illustrate a set of actions or use cases that a system can perform in tandem with one or more external users of the system (actors) ● The purpose of a use case diagram in UML is to demonstrate the different ways that a user might interact with a system. ● It is an effective technique for communicating system behavior in the user's terms by specifying all externally visible system behavior. ● It does not show the order in which steps are performed to achieve the goals of each use case. ● Use case diagrams are typically developed in the early stage of development ○ Developed by analysts together with domain experts to gather the requirements of a system. ○ Identify the external and internal factors influencing the system. ○ Show the interaction among the requirements and actors ○ Can be used to validate a systems architecture ○ Drive implementation and generate test cases
  • 8. Is it really needed?
  • 9. Use Case Diagram - Actor ● Represent “stick man” icon. ● One actor can be associated with multiple use cases in the system ● Actor is someone who interacts with use case (system function). ● Actor is an outsider to the system boundary who plays a role in the operating the system/business. ● Actor triggers use case(s). Actor is not an insider to the system. ● Actor has a responsibility toward the system (inputs), and Actor has expectations from the system (outputs).
  • 10. Use Case Diagram - Use case ● Horizontally shaped ovals that represent the different uses that a user might have ● A use case represents a distinct functionality of a system, a component, a package, or a class ● Represents a system function (automated or manual) ● Each Actor must be linked to a use case, while some use cases may not be linked to actors.
  • 11. Structuring use case diagrams with relationship There can be 5 relationship types in a use case diagram. 1. Association between actor and use case 2. Generalization of a use case 3. Generalization of an actor 4. Extend between two use cases 5. Include between two use cases
  • 12. Use Case Diagram - Association ● A line between actors and use cases ● The participation of an actor in a use case is shown by connecting an actor to a use case by a solid link. ● An actor must be associated with at least one use case ● Actors may be connected to use cases by associations, indicating that the actor and the use case communicate with one another using messages. ● UML allows the use of multiplicity (cardinality) at one or both ends of association between the actor and the use case
  • 13. Generalization of an Actor ● Generalization of an actor means that one actor can inherit the role of the other actor. ● The descendant inherits all the use cases of the ancestor. ● The descendant has one or more use cases that are specific to that role. ● In the example, how many use cases are there for NFRC customer?
  • 14. Use case Generalization ● A use-case-generalization is a directed relationship from a child use case to a parent use case, specifying how a child can specialize all behavior and characteristics described for the parent ● A parent use case may be specialized into one or more child use cases that represent more specific forms of the parent. ● Neither parent nor child is necessarily abstract, although the parent in most cases is abstract. ● A child inherits all structure, behavior, and relationships of the parent.
  • 15. Extend relationship between two use cases ● Extend is a directed relationship that specifies how and when the behavior defined in extending (optional) use case can be inserted into the the extended use case. ● The extending use case is dependent on the extended (base) use case. ● The extended (base) use case must be meaningful on its own. ● The optional extending use case is triggered conditionally at an extension point. ● An extension point is a feature of an extended use case, by which it decides to extend its functionality by inserting the extending use case. ● Extension points may be shown in a compartment of the use case oval symbol under the heading extension points. Each extension point must have a name.
  • 16. Include relationship between two use cases ● Use case include is a directed relationship between two use cases which is used to show that behavior of the included use case is inserted into the behavior of the including use case ● Include relationship show that the behaviour of the included use case is part of the including (base) use case. ● The main reason for this is to reuse the common actions across multiple use cases and to simplify complex use cases. ● The base use case is incomplete without the included use case. ● The included use case is mandatory and not optional.
  • 17. Use Case Diagram - System boundary ● An optional box that sets a system scope to use cases. ● All use cases outside the box would be considered outside the scope of that system. If no box is given, all use cases are within the system scope. ● The system boundary is potentially the entire system as defined in the requirements document. ● For large and complex systems, each module may be the system boundary.
  • 18. Use case diagram - Packages ● Packages are optional UML constructs that enable you to organize model elements (such as use cases) into groups. ● Packages are depicted as file folders and can be used on any of the UML diagrams, including both use case diagrams and class diagrams
  • 19. Business Use Case modeling notations ● Support for business modeling is declared as a goal of UML, but UML specification does not provide any notations for business use cases. ● Business use cases were introduced in Rational Unified Process (RUP). ● Business use case should produce a result of observable value to a business actor. ● Defines what happens in the business when the use case is requested by business actor, it describes complete workflow or business process. ● Business use case is represented in RUP with use case oval and a line crossing it. ● Business Actor is represented in RUP by "stick man" icon with a line crossing its head. ● Not defined in UML specification.
  • 20. Use case diagram of a Hospital Management System
  • 22. References ● Rajib Mall, Fundamentals of Software Engineering, 4th edition, PHI, 2014. ● UML Diagrams - www.uml-diagrams.org ● GeeksforGeeks - www.geeksforgeeks.org ● Wikipedia - www.wikipedia.org ● Tutorialspoint - www.tutorialspoint.com ● Disclaimer - This document contains images/texts from various internet sources. Copyright belongs to the respective content creators. Document is compiled exclusively for study purpose and shall not be used for commercial purpose.