SlideShare a Scribd company logo
1 of 17
UNIT – I (Cont…)
OUTLINE
• SpecializedProcessModel
-TheFormalMethodsModel
-Aspect-OrientedSoftwareDevelopment
• TheUnifiedProcess
-PhasesoftheUnifiedProcess
 The formal methods model encompasses a set of
activities that leads to formal mathematical specification of
computer software.
 Formal methods enable you to specify, develop, and
verify a computer-based system by applying a rigorous,
mathematical notation.
 A variation on this approach, called clean room software
engineering, is currently applied by some software
development organizations.
 When formal methods are used during development,
they provide a mechanism for eliminating many of the
problems that are difficult to overcome using other
software engineering paradigms.
 Ambiguity, incompleteness, and inconsistency can be
discovered and corrected more easily—not through the
review, but through the application of mathematical
analysis.
 When formal methods are used during design, they serve
as a basis for program verification and “discover and correct
errors” that might otherwise go undetected.
 The development of formal models is currently quite
time consuming and expensive.
 Because few software developers have the necessary
background to apply formal methods, extensive training is
required.
 It is difficult to use the models as a communication
mechanism for technically unsophisticated customers.
 Localized software characteristics are modeled as
components (e.g., object oriented classes) and then
constructed within the context of a system architecture.
 As modern computer-based systems become more
sophisticated (and complex), certain concerns—customer
required properties or areas of technical interest—span the
entire architecture.
 Some concerns are high-level properties of a system (e.g.,
security, fault tolerance).Other concerns affect functions
(e.g., the application of business rules), while others are
systemic (e.g., task synchronization or memory
management).
 When concerns cut across multiple system functions,
features, and information, they are often referred to as
cross cutting concerns.
 Aspectual requirements define those crosscutting concerns that
have an impact across the software architecture.
 Aspect-oriented software development(AOSD), often referred to as
aspect-oriented programming(AOP),is a relatively new software
engineering paradigm that provides a process and methodological
approach for defining, specifying, designing, and constructing
aspects—“mechanisms beyond subroutines and inheritance for
localizing the expression of a crosscutting concern”.
 Aspect-oriented component engineering(AOCE):AOCE uses a
concept of horizontal slices through vertically-decomposed software
components, called “aspects”.
 Components may provide or require one or more “aspect details”
relating to a particular aspect, such as a viewing mechanism,
extensible affordance and interface kind (user interface aspects);
 event generation,
 transport and receiving (distribution aspects);
 data store/retrieve and indexing (persistency aspects);
 authentication,
 encoding and access rights (security aspects);
 transaction atomicity,
 concurrency control and logging strategy (transaction
aspects); and soon.
 Each aspect detail has a number of properties, relating
to functional and/or non-functional characteristics of
the aspect detail.
 The evolutionary model is appropriate as aspects are
identified and then constructed.
 The parallel nature of concurrent development is
essential because aspects are engineered
independently.
 The unified process related to “use case driven,
architecture-centric, iterative and incremental” software
process.
 The Unified Process is an attempt to draw on the best
features and characteristics of traditional software
process models.
 The Unified Process recognizes the importance of
customer communication and streamlined methods for
describing the customer’s view of a system.
 It emphasizes the important role of software architecture
and “helps the architect focus on the right goals.
 It suggests a process flow that is iterative and
incremental.
 During the early 1990s James Rumbaugh [Rum91], Grady
Booch [Boo94], and Ivar Jacobson [Jac92] began working
on a “unified method”.
 The result was UML—a unified modeling language that
contains a robust notation for the modeling and development
of object-oriented systems.
 By 1997, UML became a de facto industry standard for object-
oriented software development.
 UML is used to represent both requirements and design
models.
 UML provided the necessary technology to support object-
oriented software engineering practice, but it did not provide
the process framework.
 Over the next few years, Jacobson, Rumbaugh, and Booch
developed the Unified Process, a framework for object-
oriented software engineering using UML.
 Today, the Unified Process (UP) and UML are widely used on
object-oriented projects of all kinds.
 The iterative, incremental model proposed by the UP can and
should be adapted to meet specific project needs.
 The above figure depicts the different phases in Unified
Process.
 The inception phase of the UP encompasses both
customer communication and planning activities.
By collaborating with stakeholders, business
requirements for the software are identified;
a rough architecture for the system is proposed; and
a plan for the iterative, incremental nature of the
ensuing project is developed.
Fundamental business requirements are described.
The architecture will be refined.
Planning identifies resources, assesses major risks,
defines a schedule, and establishes a basis for the
phases.
 The elaboration phase encompasses the communication and
modeling activities of the generic process model.
Elaboration refines and expands the preliminary use cases
that were developed as part of the inception phase and
expands the architectural representation to include five
different views of the software—the use case model, the
requirements model, the design model, the implementation
model, and the deployment model.
In some cases, elaboration creates an “executable
architectural baseline” that represents a “first cut” executable
system.
The architectural baseline demonstrates the viability of the
architecture but does not provide all features and functions
required to use the system.
In addition, the plan is carefully reviewed.
Modifications to the plan are often made at this time.
 The construction phase of the UP is identical to the
construction activity defined for the generic software process.
Using the architectural model as input, the construction phase
develops or acquires the software components that will make
each use case operational for end users.
The elaboration phase reflect the final version of the
software increment.
All necessary and required features and functions for the
software increment are then implemented in source code.
As components are being implemented, unit tests are
designed and executed for each.
In addition, integration activities are conducted.
Use cases are used to derive a suite of acceptance tests that
are executed prior to the initiation of the next UP phase.
 The transition phase of the UP encompasses the latter
stages of the generic construction activity and the first
part of the generic deployment (delivery and feedback)
activity.
 Software is given to end users for beta testing and user
feedback reports both defects and necessary changes.
 In addition, the software team creates the necessary
support information (e.g., user manuals, troubleshooting
guides, installation procedures) that is required for the
release.
 At the conclusion of the transition phase, the software
increment becomes a usable software release.
 The production phase of the UP coincides with the
deployment activity of the generic process.
During this phase, the ongoing use of the software is
monitored, support for the operating environment
(infrastructure) is provided, and defect reports and
requests for changes are submitted and evaluated.
It is likely that at the same time the construction,
transition, and production phases are being conducted.
Work may have already begun on the next software
increment.
This means that the five UP phases do not occur in a
sequence, but rather with staggered concurrency.
 A software engineering workflow is distributed across all
UP phases.
 In the context of UP, a workflow is a task set
 That is, a workflow identifies the tasks required to
accomplish an important software engineering action and
the work products that are produced as a consequence of
successfully completing the tasks.
 It should be noted that not every task identified for a UP
workflow is conducted for every software project.
 The team adapts the process (actions, tasks, subtasks,
and work products) to meet.
Software Engineering

More Related Content

What's hot

Software Engineering Unit 1
Software Engineering Unit 1Software Engineering Unit 1
Software Engineering Unit 1Abhimanyu Mishra
 
Pressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-modelsPressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-modelssaurabhshertukde
 
Software Engineering unit 4
Software Engineering unit 4Software Engineering unit 4
Software Engineering unit 4Abhimanyu Mishra
 
Unit iii-Architecture in the lifecycle
Unit iii-Architecture in the lifecycleUnit iii-Architecture in the lifecycle
Unit iii-Architecture in the lifecycleDhivyaa C.R
 
Software Engineering unit 3
Software Engineering unit 3Software Engineering unit 3
Software Engineering unit 3Abhimanyu Mishra
 
Software engineering lecture notes
Software engineering   lecture notesSoftware engineering   lecture notes
Software engineering lecture notesAmmar Shafiq
 
Quality Attribute: Testability
Quality Attribute: TestabilityQuality Attribute: Testability
Quality Attribute: TestabilityPranay Singh
 
Architecture design in software engineering
Architecture design in software engineeringArchitecture design in software engineering
Architecture design in software engineeringPreeti Mishra
 
962 sech04
962 sech04962 sech04
962 sech04aldwal
 
Aspect Oriented Software Development
Aspect Oriented Software DevelopmentAspect Oriented Software Development
Aspect Oriented Software DevelopmentJignesh Patel
 
Pressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-modelsPressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-modelszeal123123
 
Chapter 01 software engineering pressman
Chapter 01  software engineering pressmanChapter 01  software engineering pressman
Chapter 01 software engineering pressmanRohitGoyal183
 
Unit iv -Documenting and Implementation of Software Architecture
Unit iv -Documenting and Implementation of Software ArchitectureUnit iv -Documenting and Implementation of Software Architecture
Unit iv -Documenting and Implementation of Software ArchitectureDhivyaa C.R
 
Software engineering Questions and Answers
Software engineering Questions and AnswersSoftware engineering Questions and Answers
Software engineering Questions and AnswersBala Ganesh
 
Software engineering note
Software engineering noteSoftware engineering note
Software engineering noteNeelamani Samal
 
process models- software engineering
process models- software engineeringprocess models- software engineering
process models- software engineeringArun Nair
 
Lecture 3 software process model
Lecture 3   software process modelLecture 3   software process model
Lecture 3 software process modelIIUI
 

What's hot (20)

Software Engineering Unit 1
Software Engineering Unit 1Software Engineering Unit 1
Software Engineering Unit 1
 
Pressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-modelsPressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-models
 
Software Engineering unit 4
Software Engineering unit 4Software Engineering unit 4
Software Engineering unit 4
 
Unit iii-Architecture in the lifecycle
Unit iii-Architecture in the lifecycleUnit iii-Architecture in the lifecycle
Unit iii-Architecture in the lifecycle
 
Software Engineering unit 3
Software Engineering unit 3Software Engineering unit 3
Software Engineering unit 3
 
Software engineering lecture notes
Software engineering   lecture notesSoftware engineering   lecture notes
Software engineering lecture notes
 
Quality Attribute: Testability
Quality Attribute: TestabilityQuality Attribute: Testability
Quality Attribute: Testability
 
Software engineering unit 1
Software engineering unit 1Software engineering unit 1
Software engineering unit 1
 
Ch10
Ch10Ch10
Ch10
 
Architecture design in software engineering
Architecture design in software engineeringArchitecture design in software engineering
Architecture design in software engineering
 
962 sech04
962 sech04962 sech04
962 sech04
 
Aspect Oriented Software Development
Aspect Oriented Software DevelopmentAspect Oriented Software Development
Aspect Oriented Software Development
 
Pressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-modelsPressman ch-3-prescriptive-process-models
Pressman ch-3-prescriptive-process-models
 
Chapter 01 software engineering pressman
Chapter 01  software engineering pressmanChapter 01  software engineering pressman
Chapter 01 software engineering pressman
 
Unit iv -Documenting and Implementation of Software Architecture
Unit iv -Documenting and Implementation of Software ArchitectureUnit iv -Documenting and Implementation of Software Architecture
Unit iv -Documenting and Implementation of Software Architecture
 
Software engineering Questions and Answers
Software engineering Questions and AnswersSoftware engineering Questions and Answers
Software engineering Questions and Answers
 
Software engineering note
Software engineering noteSoftware engineering note
Software engineering note
 
Waterfall model
Waterfall modelWaterfall model
Waterfall model
 
process models- software engineering
process models- software engineeringprocess models- software engineering
process models- software engineering
 
Lecture 3 software process model
Lecture 3   software process modelLecture 3   software process model
Lecture 3 software process model
 

Similar to Software Engineering

Lecture 5 software process model (3)
Lecture 5   software process model (3)Lecture 5   software process model (3)
Lecture 5 software process model (3)IIUI
 
Unit-1_Notes(OOAD).pdf
Unit-1_Notes(OOAD).pdfUnit-1_Notes(OOAD).pdf
Unit-1_Notes(OOAD).pdfganeshkarthy
 
THE UNIFIED APPROACH FOR ORGANIZATIONAL NETWORK VULNERABILITY ASSESSMENT
THE UNIFIED APPROACH FOR ORGANIZATIONAL NETWORK VULNERABILITY ASSESSMENTTHE UNIFIED APPROACH FOR ORGANIZATIONAL NETWORK VULNERABILITY ASSESSMENT
THE UNIFIED APPROACH FOR ORGANIZATIONAL NETWORK VULNERABILITY ASSESSMENTijseajournal
 
6 Contracts And Scenarios In The Software Development Process
6 Contracts And Scenarios In The Software Development Process6 Contracts And Scenarios In The Software Development Process
6 Contracts And Scenarios In The Software Development ProcessDarian Pruitt
 
Elementary Probability theory Chapter 2.pptx
Elementary Probability theory Chapter 2.pptxElementary Probability theory Chapter 2.pptx
Elementary Probability theory Chapter 2.pptxethiouniverse
 
View Alignment Techniques
View Alignment TechniquesView Alignment Techniques
View Alignment TechniquesJIGAR MAKHIJA
 
Software Engineering - Lecture 02
Software Engineering - Lecture 02Software Engineering - Lecture 02
Software Engineering - Lecture 02Asifuzzaman Hridoy
 
Chapter-2 ppt for the MBA 4rh seme6y.pdf
Chapter-2 ppt for the MBA 4rh seme6y.pdfChapter-2 ppt for the MBA 4rh seme6y.pdf
Chapter-2 ppt for the MBA 4rh seme6y.pdfVikasRai405977
 
Difference Unified Processes
Difference Unified ProcessesDifference Unified Processes
Difference Unified ProcessesHARKUL
 
Software development life cycle
Software development life cycleSoftware development life cycle
Software development life cycleNishant Srivastava
 
CS8494 SOFTWARE ENGINEERING Unit-1
CS8494 SOFTWARE ENGINEERING Unit-1CS8494 SOFTWARE ENGINEERING Unit-1
CS8494 SOFTWARE ENGINEERING Unit-1SIMONTHOMAS S
 
Analysis and design web portl amazing north sulawesi using aup methodology
Analysis and design web portl amazing north sulawesi using aup methodologyAnalysis and design web portl amazing north sulawesi using aup methodology
Analysis and design web portl amazing north sulawesi using aup methodologyStanley Karouw
 
Soft.Engg. UNIT 1.pptx
Soft.Engg. UNIT 1.pptxSoft.Engg. UNIT 1.pptx
Soft.Engg. UNIT 1.pptxKalpna Saharan
 
System analsis and design
System analsis and designSystem analsis and design
System analsis and designRizwan Kabir
 
Planning the development process
Planning the development processPlanning the development process
Planning the development processSiva Priya
 

Similar to Software Engineering (20)

Lecture 5 software process model (3)
Lecture 5   software process model (3)Lecture 5   software process model (3)
Lecture 5 software process model (3)
 
Unit-1_Notes(OOAD).pdf
Unit-1_Notes(OOAD).pdfUnit-1_Notes(OOAD).pdf
Unit-1_Notes(OOAD).pdf
 
THE UNIFIED APPROACH FOR ORGANIZATIONAL NETWORK VULNERABILITY ASSESSMENT
THE UNIFIED APPROACH FOR ORGANIZATIONAL NETWORK VULNERABILITY ASSESSMENTTHE UNIFIED APPROACH FOR ORGANIZATIONAL NETWORK VULNERABILITY ASSESSMENT
THE UNIFIED APPROACH FOR ORGANIZATIONAL NETWORK VULNERABILITY ASSESSMENT
 
6 Contracts And Scenarios In The Software Development Process
6 Contracts And Scenarios In The Software Development Process6 Contracts And Scenarios In The Software Development Process
6 Contracts And Scenarios In The Software Development Process
 
Elementary Probability theory Chapter 2.pptx
Elementary Probability theory Chapter 2.pptxElementary Probability theory Chapter 2.pptx
Elementary Probability theory Chapter 2.pptx
 
View Alignment Techniques
View Alignment TechniquesView Alignment Techniques
View Alignment Techniques
 
Chapter 2.pptx
Chapter 2.pptxChapter 2.pptx
Chapter 2.pptx
 
Software models
Software modelsSoftware models
Software models
 
Software Engineering - Lecture 02
Software Engineering - Lecture 02Software Engineering - Lecture 02
Software Engineering - Lecture 02
 
Chapter-2 ppt for the MBA 4rh seme6y.pdf
Chapter-2 ppt for the MBA 4rh seme6y.pdfChapter-2 ppt for the MBA 4rh seme6y.pdf
Chapter-2 ppt for the MBA 4rh seme6y.pdf
 
Difference Unified Processes
Difference Unified ProcessesDifference Unified Processes
Difference Unified Processes
 
Software development life cycle
Software development life cycleSoftware development life cycle
Software development life cycle
 
Sdpl1
Sdpl1Sdpl1
Sdpl1
 
CS8494 SOFTWARE ENGINEERING Unit-1
CS8494 SOFTWARE ENGINEERING Unit-1CS8494 SOFTWARE ENGINEERING Unit-1
CS8494 SOFTWARE ENGINEERING Unit-1
 
Unit_I.pptx
Unit_I.pptxUnit_I.pptx
Unit_I.pptx
 
Analysis and design web portl amazing north sulawesi using aup methodology
Analysis and design web portl amazing north sulawesi using aup methodologyAnalysis and design web portl amazing north sulawesi using aup methodology
Analysis and design web portl amazing north sulawesi using aup methodology
 
Soft.Engg. UNIT 1.pptx
Soft.Engg. UNIT 1.pptxSoft.Engg. UNIT 1.pptx
Soft.Engg. UNIT 1.pptx
 
System analsis and design
System analsis and designSystem analsis and design
System analsis and design
 
Planning the development process
Planning the development processPlanning the development process
Planning the development process
 
01lifecycles
01lifecycles01lifecycles
01lifecycles
 

More from JayaKamal

To learn Basic Excel - Data Entry, Formulas and Functions
To learn Basic Excel - Data Entry, Formulas and FunctionsTo learn Basic Excel - Data Entry, Formulas and Functions
To learn Basic Excel - Data Entry, Formulas and FunctionsJayaKamal
 
Introduction Linked Lists - Singly Linked List,
Introduction Linked Lists - Singly Linked List,Introduction Linked Lists - Singly Linked List,
Introduction Linked Lists - Singly Linked List,JayaKamal
 
Introduction - Data Structures and Algorithms.ppt
Introduction - Data Structures and Algorithms.pptIntroduction - Data Structures and Algorithms.ppt
Introduction - Data Structures and Algorithms.pptJayaKamal
 
What is an Operating Systems?
What is an Operating Systems?What is an Operating Systems?
What is an Operating Systems?JayaKamal
 
Software Engineering
 Software Engineering  Software Engineering
Software Engineering JayaKamal
 

More from JayaKamal (6)

To learn Basic Excel - Data Entry, Formulas and Functions
To learn Basic Excel - Data Entry, Formulas and FunctionsTo learn Basic Excel - Data Entry, Formulas and Functions
To learn Basic Excel - Data Entry, Formulas and Functions
 
Introduction Linked Lists - Singly Linked List,
Introduction Linked Lists - Singly Linked List,Introduction Linked Lists - Singly Linked List,
Introduction Linked Lists - Singly Linked List,
 
Introduction - Data Structures and Algorithms.ppt
Introduction - Data Structures and Algorithms.pptIntroduction - Data Structures and Algorithms.ppt
Introduction - Data Structures and Algorithms.ppt
 
What is an Operating Systems?
What is an Operating Systems?What is an Operating Systems?
What is an Operating Systems?
 
Jsp
JspJsp
Jsp
 
Software Engineering
 Software Engineering  Software Engineering
Software Engineering
 

Recently uploaded

Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxDr. Sarita Anand
 
21st_Century_Skills_Framework_Final_Presentation_2.pptx
21st_Century_Skills_Framework_Final_Presentation_2.pptx21st_Century_Skills_Framework_Final_Presentation_2.pptx
21st_Century_Skills_Framework_Final_Presentation_2.pptxJoelynRubio1
 
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxCOMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxannathomasp01
 
How to Add a Tool Tip to a Field in Odoo 17
How to Add a Tool Tip to a Field in Odoo 17How to Add a Tool Tip to a Field in Odoo 17
How to Add a Tool Tip to a Field in Odoo 17Celine George
 
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...Nguyen Thanh Tu Collection
 
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxHMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxmarlenawright1
 
Tatlong Kwento ni Lola basyang-1.pdf arts
Tatlong Kwento ni Lola basyang-1.pdf artsTatlong Kwento ni Lola basyang-1.pdf arts
Tatlong Kwento ni Lola basyang-1.pdf artsNbelano25
 
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
 
Interdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxInterdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxPooja Bhuva
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and ModificationsMJDuyan
 
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdfUnit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdfDr Vijay Vishwakarma
 
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
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxEsquimalt MFRC
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxheathfieldcps1
 
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
 
How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17Celine George
 
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...Amil baba
 
Details on CBSE Compartment Exam.pptx1111
Details on CBSE Compartment Exam.pptx1111Details on CBSE Compartment Exam.pptx1111
Details on CBSE Compartment Exam.pptx1111GangaMaiya1
 
Simple, Complex, and Compound Sentences Exercises.pdf
Simple, Complex, and Compound Sentences Exercises.pdfSimple, Complex, and Compound Sentences Exercises.pdf
Simple, Complex, and Compound Sentences Exercises.pdfstareducators107
 

Recently uploaded (20)

Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptx
 
21st_Century_Skills_Framework_Final_Presentation_2.pptx
21st_Century_Skills_Framework_Final_Presentation_2.pptx21st_Century_Skills_Framework_Final_Presentation_2.pptx
21st_Century_Skills_Framework_Final_Presentation_2.pptx
 
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptxCOMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
COMMUNICATING NEGATIVE NEWS - APPROACHES .pptx
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
How to Add a Tool Tip to a Field in Odoo 17
How to Add a Tool Tip to a Field in Odoo 17How to Add a Tool Tip to a Field in Odoo 17
How to Add a Tool Tip to a Field in Odoo 17
 
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
 
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxHMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
 
Tatlong Kwento ni Lola basyang-1.pdf arts
Tatlong Kwento ni Lola basyang-1.pdf artsTatlong Kwento ni Lola basyang-1.pdf arts
Tatlong Kwento ni Lola basyang-1.pdf arts
 
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
 
Interdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxInterdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptx
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdfUnit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdf
 
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_...
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
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
 
How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17
 
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
NO1 Top Black Magic Specialist In Lahore Black magic In Pakistan Kala Ilam Ex...
 
Details on CBSE Compartment Exam.pptx1111
Details on CBSE Compartment Exam.pptx1111Details on CBSE Compartment Exam.pptx1111
Details on CBSE Compartment Exam.pptx1111
 
Simple, Complex, and Compound Sentences Exercises.pdf
Simple, Complex, and Compound Sentences Exercises.pdfSimple, Complex, and Compound Sentences Exercises.pdf
Simple, Complex, and Compound Sentences Exercises.pdf
 

Software Engineering

  • 1.
  • 2. UNIT – I (Cont…) OUTLINE • SpecializedProcessModel -TheFormalMethodsModel -Aspect-OrientedSoftwareDevelopment • TheUnifiedProcess -PhasesoftheUnifiedProcess
  • 3.  The formal methods model encompasses a set of activities that leads to formal mathematical specification of computer software.  Formal methods enable you to specify, develop, and verify a computer-based system by applying a rigorous, mathematical notation.  A variation on this approach, called clean room software engineering, is currently applied by some software development organizations.  When formal methods are used during development, they provide a mechanism for eliminating many of the problems that are difficult to overcome using other software engineering paradigms.
  • 4.  Ambiguity, incompleteness, and inconsistency can be discovered and corrected more easily—not through the review, but through the application of mathematical analysis.  When formal methods are used during design, they serve as a basis for program verification and “discover and correct errors” that might otherwise go undetected.  The development of formal models is currently quite time consuming and expensive.  Because few software developers have the necessary background to apply formal methods, extensive training is required.  It is difficult to use the models as a communication mechanism for technically unsophisticated customers.
  • 5.  Localized software characteristics are modeled as components (e.g., object oriented classes) and then constructed within the context of a system architecture.  As modern computer-based systems become more sophisticated (and complex), certain concerns—customer required properties or areas of technical interest—span the entire architecture.  Some concerns are high-level properties of a system (e.g., security, fault tolerance).Other concerns affect functions (e.g., the application of business rules), while others are systemic (e.g., task synchronization or memory management).  When concerns cut across multiple system functions, features, and information, they are often referred to as cross cutting concerns.
  • 6.  Aspectual requirements define those crosscutting concerns that have an impact across the software architecture.  Aspect-oriented software development(AOSD), often referred to as aspect-oriented programming(AOP),is a relatively new software engineering paradigm that provides a process and methodological approach for defining, specifying, designing, and constructing aspects—“mechanisms beyond subroutines and inheritance for localizing the expression of a crosscutting concern”.  Aspect-oriented component engineering(AOCE):AOCE uses a concept of horizontal slices through vertically-decomposed software components, called “aspects”.  Components may provide or require one or more “aspect details” relating to a particular aspect, such as a viewing mechanism, extensible affordance and interface kind (user interface aspects);  event generation,  transport and receiving (distribution aspects);  data store/retrieve and indexing (persistency aspects);  authentication,  encoding and access rights (security aspects);
  • 7.  transaction atomicity,  concurrency control and logging strategy (transaction aspects); and soon.  Each aspect detail has a number of properties, relating to functional and/or non-functional characteristics of the aspect detail.  The evolutionary model is appropriate as aspects are identified and then constructed.  The parallel nature of concurrent development is essential because aspects are engineered independently.
  • 8.  The unified process related to “use case driven, architecture-centric, iterative and incremental” software process.  The Unified Process is an attempt to draw on the best features and characteristics of traditional software process models.  The Unified Process recognizes the importance of customer communication and streamlined methods for describing the customer’s view of a system.  It emphasizes the important role of software architecture and “helps the architect focus on the right goals.  It suggests a process flow that is iterative and incremental.  During the early 1990s James Rumbaugh [Rum91], Grady Booch [Boo94], and Ivar Jacobson [Jac92] began working on a “unified method”.
  • 9.  The result was UML—a unified modeling language that contains a robust notation for the modeling and development of object-oriented systems.  By 1997, UML became a de facto industry standard for object- oriented software development.  UML is used to represent both requirements and design models.  UML provided the necessary technology to support object- oriented software engineering practice, but it did not provide the process framework.  Over the next few years, Jacobson, Rumbaugh, and Booch developed the Unified Process, a framework for object- oriented software engineering using UML.  Today, the Unified Process (UP) and UML are widely used on object-oriented projects of all kinds.  The iterative, incremental model proposed by the UP can and should be adapted to meet specific project needs.
  • 10.
  • 11.  The above figure depicts the different phases in Unified Process.  The inception phase of the UP encompasses both customer communication and planning activities. By collaborating with stakeholders, business requirements for the software are identified; a rough architecture for the system is proposed; and a plan for the iterative, incremental nature of the ensuing project is developed. Fundamental business requirements are described. The architecture will be refined. Planning identifies resources, assesses major risks, defines a schedule, and establishes a basis for the phases.
  • 12.  The elaboration phase encompasses the communication and modeling activities of the generic process model. Elaboration refines and expands the preliminary use cases that were developed as part of the inception phase and expands the architectural representation to include five different views of the software—the use case model, the requirements model, the design model, the implementation model, and the deployment model. In some cases, elaboration creates an “executable architectural baseline” that represents a “first cut” executable system. The architectural baseline demonstrates the viability of the architecture but does not provide all features and functions required to use the system. In addition, the plan is carefully reviewed. Modifications to the plan are often made at this time.
  • 13.  The construction phase of the UP is identical to the construction activity defined for the generic software process. Using the architectural model as input, the construction phase develops or acquires the software components that will make each use case operational for end users. The elaboration phase reflect the final version of the software increment. All necessary and required features and functions for the software increment are then implemented in source code. As components are being implemented, unit tests are designed and executed for each. In addition, integration activities are conducted. Use cases are used to derive a suite of acceptance tests that are executed prior to the initiation of the next UP phase.
  • 14.  The transition phase of the UP encompasses the latter stages of the generic construction activity and the first part of the generic deployment (delivery and feedback) activity.  Software is given to end users for beta testing and user feedback reports both defects and necessary changes.  In addition, the software team creates the necessary support information (e.g., user manuals, troubleshooting guides, installation procedures) that is required for the release.  At the conclusion of the transition phase, the software increment becomes a usable software release.
  • 15.  The production phase of the UP coincides with the deployment activity of the generic process. During this phase, the ongoing use of the software is monitored, support for the operating environment (infrastructure) is provided, and defect reports and requests for changes are submitted and evaluated. It is likely that at the same time the construction, transition, and production phases are being conducted. Work may have already begun on the next software increment. This means that the five UP phases do not occur in a sequence, but rather with staggered concurrency.
  • 16.  A software engineering workflow is distributed across all UP phases.  In the context of UP, a workflow is a task set  That is, a workflow identifies the tasks required to accomplish an important software engineering action and the work products that are produced as a consequence of successfully completing the tasks.  It should be noted that not every task identified for a UP workflow is conducted for every software project.  The team adapts the process (actions, tasks, subtasks, and work products) to meet.