SlideShare a Scribd company logo
1 of 24
Software
Engineering-L11
Sameera
Gunathilaka
Lead Software
Engineer
ERP Technical
Consultant
IT1204 – Software Engineering
Institute of Technology, University of Moratuwa
1
IT1204 – Software Engineering
Institute of Technology, University of Moratuwa
2
IT1204 – Software Engineering
Institute of Technology, University of Moratuwa
3
What
to
do?
IT1204 – Software Engineering
Institute of Technology, University of Moratuwa
4
IT1204 – Software Engineering
Institute of Technology, University of Moratuwa
5
Why Software Re-engineering?
• ‘Trying to figure out the structure and behavior of existing
software by building general-level static and dynamic models’
• Re-structuring or re-writing part or all of a legacy system without
changing its functionality
• Applicable where some but not all sub-systems of a larger system
require frequent maintenance
IT1204 – Software Engineering
Institute of Technology, University of Moratuwa
6
Advantages of Re-engineering
• Reduce Risk
• Risk is less than developing new software
• Reduced Cost
• Cost of developing a new software is significantly high than Re-engineering
• Productivity increases
IT1204 – Software Engineering
Institute of Technology, University of Moratuwa
7
Re-Engineering cost factors
•The quality of the software to be re-engineered.
•The tool support availability for engineering.
•Extent of the data conversion which is required.
•The availability of expert staff for Re-engineering.
IT1204 – Software Engineering
Institute of Technology, University of Moratuwa
8
When RE is needed
• When the programming language or platform is no longer
supported. (IFS converted Centura code to C#.net code)
• There is a drastic change in technology. ( IFS windows technology
was changed to web based technologies)
• Business processes in the company are changing.( Banking
System)
• If the software is initially poor. ( LinkedIn/ Autolanka.com)
• A technology appears which is perfect for your goals.
IT1204 – Software Engineering
Institute of Technology, University of Moratuwa
9
Forward
IT1204 – Software Engineering Institute of Technology,
University of Moratuwa 10
Forward Engineering
“Forward engineering is the traditional process of moving
from high-level abstractions and logical, implementation-
independent designs to the physical implementation of a
system."
IT1204 – Software Engineering
Institute of Technology, University of Moratuwa
11
IT1204 – Software Engineering
Institute of Technology, University of Moratuwa
12
IT1204 – Software Engineering
Institute of Technology, University of Moratuwa
13
Understanding and
transformation
Existing
software system
Re-engineered
system
Design and
implementation
System
specification
New
system
Software re-engineering
Forward engineering
IT1204 – Software Engineering Institute of Technology,
University of Moratuwa 14
Software Re-engineering
• Reorganising and modifying existing software systems to make them
more maintainable
• Examination and alteration of a system to reconstitute it in a new
form
• The principles of Re-Engineering when applied to the software
development process is called software re-engineering
IT1204 – Software Engineering
Institute of Technology, University of Moratuwa
15
Some Software re-engineering activities
• Source code translation into another programming language
• Database reorganization or its transfer
• Software architecture optimization
• New functionality addition and integration with third-party APIs.
IT1204 – Software Engineering
Institute of Technology, University of Moratuwa
16
Software
Re-Engineering
Cycle
IT1204 – Software Engineering Institute of Technology, University of
Moratuwa 17
Inventory Analysis
• Every software organisation should have an inventory of all the
applications.
• Inventory can be nothing more than a spreadsheet model containing
information that provides a detailed description of every active
application.
• By sorting this information according to business criticality, longevity,
current maintainability and other local important criteria, candidates for
re-engineering appear.
• Resource can then be allocated to candidate application for re-
engineering work.
IT1204 – Software Engineering
Institute of Technology, University of Moratuwa
18
Document reconstructing
• Documentation of a system either explains how it operate or how to
use it.
• Documentation must be updated.
• It may not be necessary to fully document an application.
• The system is business critical and must be fully re-documented.
IT1204 – Software Engineering
Institute of Technology, University of Moratuwa
19
Reverse Engineering
• Reverse engineering is a process of design recovery.
• Reverse engineering tools extracts data, architectural and procedural
design information from an existing program.
IT1204 – Software Engineering
Institute of Technology, University of Moratuwa
20
Code Reconstructing
• The source code is analysed using a reconstructing tool.
• Violations of structured programming construct are noted and code is
then reconstruct.
• The resultant restructured code is reviewed and tested to ensure that
no anomalies have been introduced.
IT1204 – Software Engineering
Institute of Technology, University of Moratuwa
21
Data Restructuring
• Data restructuring begins with the reverse engineering activity.
• Current data architecture is dissected, and necessary data models are
defined.
• Data objects and attributes are identified, and existing data structure
are reviewed for quality.
IT1204 – Software Engineering
Institute of Technology, University of Moratuwa
22
Forward Engineering
• Forward Engineering also called as renovation or reclamation not only
for recovers design information from existing software but uses this
information to alter or reconstitute the existing system in an effort to
improve its overall quality.
IT1204 – Software Engineering
Institute of Technology, University of Moratuwa
23
Thank you
IT1204 – Software Engineering
Institute of Technology, University of Moratuwa
24

More Related Content

What's hot

Kendall sad8e ch03
Kendall sad8e ch03Kendall sad8e ch03
Kendall sad8e ch03N/A
 
Requirements engineering processes
Requirements engineering processesRequirements engineering processes
Requirements engineering processessommerville-videos
 
IT1204 - Software Engineering -L8
IT1204 - Software Engineering -L8IT1204 - Software Engineering -L8
IT1204 - Software Engineering -L8BakerTilly US
 
Requirements engineering scenario based software requirement specification
Requirements engineering scenario based software requirement specificationRequirements engineering scenario based software requirement specification
Requirements engineering scenario based software requirement specificationWolfgang Kuchinke
 
An overview of software requirements engineering
An overview of software requirements engineeringAn overview of software requirements engineering
An overview of software requirements engineeringIan Sommerville
 
System Analysis And Design Management Information System
System Analysis And Design Management Information SystemSystem Analysis And Design Management Information System
System Analysis And Design Management Information Systemnayanav
 
SRS(software requirement specification)
SRS(software requirement specification)SRS(software requirement specification)
SRS(software requirement specification)Akash Kumar Dhameja
 
Requirements Engineering - "Ch2 an introduction to requirements"
Requirements Engineering - "Ch2 an introduction to requirements"Requirements Engineering - "Ch2 an introduction to requirements"
Requirements Engineering - "Ch2 an introduction to requirements"Ra'Fat Al-Msie'deen
 
Requirements engineering
Requirements engineeringRequirements engineering
Requirements engineeringSutha31
 
Hi600 u07_inst_slides
Hi600  u07_inst_slidesHi600  u07_inst_slides
Hi600 u07_inst_slidesljmcneill33
 
Requirements engineering
Requirements engineeringRequirements engineering
Requirements engineeringAyaz Shariff
 

What's hot (19)

Kendall sad8e ch03
Kendall sad8e ch03Kendall sad8e ch03
Kendall sad8e ch03
 
Software Processes
Software ProcessesSoftware Processes
Software Processes
 
System Development Proecess
System Development ProecessSystem Development Proecess
System Development Proecess
 
Requirements engineering processes
Requirements engineering processesRequirements engineering processes
Requirements engineering processes
 
IT1204 - Software Engineering -L8
IT1204 - Software Engineering -L8IT1204 - Software Engineering -L8
IT1204 - Software Engineering -L8
 
Requirements engineering scenario based software requirement specification
Requirements engineering scenario based software requirement specificationRequirements engineering scenario based software requirement specification
Requirements engineering scenario based software requirement specification
 
Introduction Software engineering
Introduction   Software engineeringIntroduction   Software engineering
Introduction Software engineering
 
An overview of software requirements engineering
An overview of software requirements engineeringAn overview of software requirements engineering
An overview of software requirements engineering
 
System Analysis And Design Management Information System
System Analysis And Design Management Information SystemSystem Analysis And Design Management Information System
System Analysis And Design Management Information System
 
SRS(software requirement specification)
SRS(software requirement specification)SRS(software requirement specification)
SRS(software requirement specification)
 
Systems request
Systems requestSystems request
Systems request
 
Requirements Engineering - "Ch2 an introduction to requirements"
Requirements Engineering - "Ch2 an introduction to requirements"Requirements Engineering - "Ch2 an introduction to requirements"
Requirements Engineering - "Ch2 an introduction to requirements"
 
System proposal
System proposalSystem proposal
System proposal
 
Requirements engineering
Requirements engineeringRequirements engineering
Requirements engineering
 
Systems Life Cycle
Systems Life CycleSystems Life Cycle
Systems Life Cycle
 
Hi600 u07_inst_slides
Hi600  u07_inst_slidesHi600  u07_inst_slides
Hi600 u07_inst_slides
 
Requirements engineering
Requirements engineeringRequirements engineering
Requirements engineering
 
Requirement analysis
Requirement analysisRequirement analysis
Requirement analysis
 
SSE Technical Overview
SSE Technical OverviewSSE Technical Overview
SSE Technical Overview
 

Similar to IT1204 - Software Engineering - L11

IT1204 - Software Engineering - L12
IT1204 - Software Engineering - L12IT1204 - Software Engineering - L12
IT1204 - Software Engineering - L12BakerTilly US
 
IT1204 - Software engineering - L5
IT1204 - Software engineering - L5IT1204 - Software engineering - L5
IT1204 - Software engineering - L5BakerTilly US
 
IT1204 – Software Engineering L6
IT1204 – Software Engineering L6                                           IT1204 – Software Engineering L6
IT1204 – Software Engineering L6 BakerTilly US
 
IT1204 - Software Engineering - L7
IT1204 - Software Engineering - L7IT1204 - Software Engineering - L7
IT1204 - Software Engineering - L7BakerTilly US
 
IT1204- Software Engineering - L3
IT1204- Software Engineering - L3IT1204- Software Engineering - L3
IT1204- Software Engineering - L3BakerTilly US
 
IT1204 - Software Engineering - L13
IT1204 - Software Engineering - L13IT1204 - Software Engineering - L13
IT1204 - Software Engineering - L13BakerTilly US
 
IT1204- Introduction to software engineering - L1
IT1204- Introduction to software engineering - L1IT1204- Introduction to software engineering - L1
IT1204- Introduction to software engineering - L1BakerTilly US
 
e-Business - SE trends
e-Business - SE trendse-Business - SE trends
e-Business - SE trendsVladimir Kotov
 
IT1204- Software Engineering - L2
IT1204- Software Engineering - L2IT1204- Software Engineering - L2
IT1204- Software Engineering - L2BakerTilly US
 
Software Engineering.ppt
Software Engineering.pptSoftware Engineering.ppt
Software Engineering.pptHODCOMPUTER10
 
SE chp1 update and learning management .pptx
SE chp1 update and learning management .pptxSE chp1 update and learning management .pptx
SE chp1 update and learning management .pptxssuserdee5bb1
 
Best practices in networks and infrastructure
Best practices in networks and infrastructureBest practices in networks and infrastructure
Best practices in networks and infrastructurenicholas njoroge
 
Software Engineering 2 lecture slide
Software Engineering 2 lecture slideSoftware Engineering 2 lecture slide
Software Engineering 2 lecture slideAdil Mehmoood
 
Reengineering pros and cons
Reengineering pros and consReengineering pros and cons
Reengineering pros and consNeema Volvoikar
 
Lecture 1 - Requirement Engineering.pptx
Lecture 1 - Requirement Engineering.pptxLecture 1 - Requirement Engineering.pptx
Lecture 1 - Requirement Engineering.pptxAbdulRaheem254960
 

Similar to IT1204 - Software Engineering - L11 (20)

IT1204 - Software Engineering - L12
IT1204 - Software Engineering - L12IT1204 - Software Engineering - L12
IT1204 - Software Engineering - L12
 
IT1204 - Software engineering - L5
IT1204 - Software engineering - L5IT1204 - Software engineering - L5
IT1204 - Software engineering - L5
 
IT1204 – Software Engineering L6
IT1204 – Software Engineering L6                                           IT1204 – Software Engineering L6
IT1204 – Software Engineering L6
 
IT1204 - Software Engineering - L7
IT1204 - Software Engineering - L7IT1204 - Software Engineering - L7
IT1204 - Software Engineering - L7
 
IT1204- Software Engineering - L3
IT1204- Software Engineering - L3IT1204- Software Engineering - L3
IT1204- Software Engineering - L3
 
IT1204 - Software Engineering - L13
IT1204 - Software Engineering - L13IT1204 - Software Engineering - L13
IT1204 - Software Engineering - L13
 
IT1204- Introduction to software engineering - L1
IT1204- Introduction to software engineering - L1IT1204- Introduction to software engineering - L1
IT1204- Introduction to software engineering - L1
 
e-Business - SE trends
e-Business - SE trendse-Business - SE trends
e-Business - SE trends
 
ch11.ppt
ch11.pptch11.ppt
ch11.ppt
 
IT1204- Software Engineering - L2
IT1204- Software Engineering - L2IT1204- Software Engineering - L2
IT1204- Software Engineering - L2
 
Software Engineering.ppt
Software Engineering.pptSoftware Engineering.ppt
Software Engineering.ppt
 
SE chp1 update and learning management .pptx
SE chp1 update and learning management .pptxSE chp1 update and learning management .pptx
SE chp1 update and learning management .pptx
 
Best practices in networks and infrastructure
Best practices in networks and infrastructureBest practices in networks and infrastructure
Best practices in networks and infrastructure
 
Software Development Life Cycle
Software Development Life CycleSoftware Development Life Cycle
Software Development Life Cycle
 
Sdlc 4
Sdlc 4Sdlc 4
Sdlc 4
 
Software Engineering 2 lecture slide
Software Engineering 2 lecture slideSoftware Engineering 2 lecture slide
Software Engineering 2 lecture slide
 
Unit 1
Unit 1Unit 1
Unit 1
 
Reengineering pros and cons
Reengineering pros and consReengineering pros and cons
Reengineering pros and cons
 
SOFTWARE ENGINEERING
SOFTWARE ENGINEERINGSOFTWARE ENGINEERING
SOFTWARE ENGINEERING
 
Lecture 1 - Requirement Engineering.pptx
Lecture 1 - Requirement Engineering.pptxLecture 1 - Requirement Engineering.pptx
Lecture 1 - Requirement Engineering.pptx
 

More from BakerTilly US

IT1206- Object Oriented Analysis and Design- L10
IT1206- Object Oriented Analysis and Design- L10IT1206- Object Oriented Analysis and Design- L10
IT1206- Object Oriented Analysis and Design- L10BakerTilly US
 
IT1206 Object Oriented Analysis and Design-L8
IT1206   Object Oriented Analysis and Design-L8IT1206   Object Oriented Analysis and Design-L8
IT1206 Object Oriented Analysis and Design-L8BakerTilly US
 
IT1206 Object Oriented Analysis And Design-L6
IT1206   Object Oriented Analysis And Design-L6IT1206   Object Oriented Analysis And Design-L6
IT1206 Object Oriented Analysis And Design-L6BakerTilly US
 
IT1206 Object Oriented Analysis and Design-L5
IT1206   Object Oriented Analysis and Design-L5IT1206   Object Oriented Analysis and Design-L5
IT1206 Object Oriented Analysis and Design-L5BakerTilly US
 
IT1206 Object Oriented Analysis and Design-L4
IT1206   Object Oriented Analysis and Design-L4IT1206   Object Oriented Analysis and Design-L4
IT1206 Object Oriented Analysis and Design-L4BakerTilly US
 
IT1204 - Software Engineering L3- Extended
IT1204 - Software Engineering   L3- ExtendedIT1204 - Software Engineering   L3- Extended
IT1204 - Software Engineering L3- ExtendedBakerTilly US
 
IT1206 Object Oriented Analysis and Design- L3
IT1206   Object Oriented Analysis and Design- L3IT1206   Object Oriented Analysis and Design- L3
IT1206 Object Oriented Analysis and Design- L3BakerTilly US
 
IT1206 - Object Oriented Analysis and Design-L2 (Lab session 01)
IT1206 - Object Oriented Analysis and Design-L2 (Lab session 01)IT1206 - Object Oriented Analysis and Design-L2 (Lab session 01)
IT1206 - Object Oriented Analysis and Design-L2 (Lab session 01)BakerTilly US
 
IT1206- Object Oriented Analysis And Design-L1
IT1206- Object Oriented Analysis And Design-L1IT1206- Object Oriented Analysis And Design-L1
IT1206- Object Oriented Analysis And Design-L1BakerTilly US
 
Analysis of Service Gaps - Customer service management
Analysis of Service Gaps - Customer service management Analysis of Service Gaps - Customer service management
Analysis of Service Gaps - Customer service management BakerTilly US
 

More from BakerTilly US (10)

IT1206- Object Oriented Analysis and Design- L10
IT1206- Object Oriented Analysis and Design- L10IT1206- Object Oriented Analysis and Design- L10
IT1206- Object Oriented Analysis and Design- L10
 
IT1206 Object Oriented Analysis and Design-L8
IT1206   Object Oriented Analysis and Design-L8IT1206   Object Oriented Analysis and Design-L8
IT1206 Object Oriented Analysis and Design-L8
 
IT1206 Object Oriented Analysis And Design-L6
IT1206   Object Oriented Analysis And Design-L6IT1206   Object Oriented Analysis And Design-L6
IT1206 Object Oriented Analysis And Design-L6
 
IT1206 Object Oriented Analysis and Design-L5
IT1206   Object Oriented Analysis and Design-L5IT1206   Object Oriented Analysis and Design-L5
IT1206 Object Oriented Analysis and Design-L5
 
IT1206 Object Oriented Analysis and Design-L4
IT1206   Object Oriented Analysis and Design-L4IT1206   Object Oriented Analysis and Design-L4
IT1206 Object Oriented Analysis and Design-L4
 
IT1204 - Software Engineering L3- Extended
IT1204 - Software Engineering   L3- ExtendedIT1204 - Software Engineering   L3- Extended
IT1204 - Software Engineering L3- Extended
 
IT1206 Object Oriented Analysis and Design- L3
IT1206   Object Oriented Analysis and Design- L3IT1206   Object Oriented Analysis and Design- L3
IT1206 Object Oriented Analysis and Design- L3
 
IT1206 - Object Oriented Analysis and Design-L2 (Lab session 01)
IT1206 - Object Oriented Analysis and Design-L2 (Lab session 01)IT1206 - Object Oriented Analysis and Design-L2 (Lab session 01)
IT1206 - Object Oriented Analysis and Design-L2 (Lab session 01)
 
IT1206- Object Oriented Analysis And Design-L1
IT1206- Object Oriented Analysis And Design-L1IT1206- Object Oriented Analysis And Design-L1
IT1206- Object Oriented Analysis And Design-L1
 
Analysis of Service Gaps - Customer service management
Analysis of Service Gaps - Customer service management Analysis of Service Gaps - Customer service management
Analysis of Service Gaps - Customer service management
 

Recently uploaded

How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfCionsystems
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...soniya singh
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 

Recently uploaded (20)

How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Active Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdfActive Directory Penetration Testing, cionsystems.com.pdf
Active Directory Penetration Testing, cionsystems.com.pdf
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi ➡️ 8264348440 💋📞 Independent Escort S...
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 

IT1204 - Software Engineering - L11

  • 1. Software Engineering-L11 Sameera Gunathilaka Lead Software Engineer ERP Technical Consultant IT1204 – Software Engineering Institute of Technology, University of Moratuwa 1
  • 2. IT1204 – Software Engineering Institute of Technology, University of Moratuwa 2
  • 3. IT1204 – Software Engineering Institute of Technology, University of Moratuwa 3 What to do?
  • 4. IT1204 – Software Engineering Institute of Technology, University of Moratuwa 4
  • 5. IT1204 – Software Engineering Institute of Technology, University of Moratuwa 5
  • 6. Why Software Re-engineering? • ‘Trying to figure out the structure and behavior of existing software by building general-level static and dynamic models’ • Re-structuring or re-writing part or all of a legacy system without changing its functionality • Applicable where some but not all sub-systems of a larger system require frequent maintenance IT1204 – Software Engineering Institute of Technology, University of Moratuwa 6
  • 7. Advantages of Re-engineering • Reduce Risk • Risk is less than developing new software • Reduced Cost • Cost of developing a new software is significantly high than Re-engineering • Productivity increases IT1204 – Software Engineering Institute of Technology, University of Moratuwa 7
  • 8. Re-Engineering cost factors •The quality of the software to be re-engineered. •The tool support availability for engineering. •Extent of the data conversion which is required. •The availability of expert staff for Re-engineering. IT1204 – Software Engineering Institute of Technology, University of Moratuwa 8
  • 9. When RE is needed • When the programming language or platform is no longer supported. (IFS converted Centura code to C#.net code) • There is a drastic change in technology. ( IFS windows technology was changed to web based technologies) • Business processes in the company are changing.( Banking System) • If the software is initially poor. ( LinkedIn/ Autolanka.com) • A technology appears which is perfect for your goals. IT1204 – Software Engineering Institute of Technology, University of Moratuwa 9
  • 10. Forward IT1204 – Software Engineering Institute of Technology, University of Moratuwa 10
  • 11. Forward Engineering “Forward engineering is the traditional process of moving from high-level abstractions and logical, implementation- independent designs to the physical implementation of a system." IT1204 – Software Engineering Institute of Technology, University of Moratuwa 11
  • 12. IT1204 – Software Engineering Institute of Technology, University of Moratuwa 12
  • 13. IT1204 – Software Engineering Institute of Technology, University of Moratuwa 13
  • 14. Understanding and transformation Existing software system Re-engineered system Design and implementation System specification New system Software re-engineering Forward engineering IT1204 – Software Engineering Institute of Technology, University of Moratuwa 14
  • 15. Software Re-engineering • Reorganising and modifying existing software systems to make them more maintainable • Examination and alteration of a system to reconstitute it in a new form • The principles of Re-Engineering when applied to the software development process is called software re-engineering IT1204 – Software Engineering Institute of Technology, University of Moratuwa 15
  • 16. Some Software re-engineering activities • Source code translation into another programming language • Database reorganization or its transfer • Software architecture optimization • New functionality addition and integration with third-party APIs. IT1204 – Software Engineering Institute of Technology, University of Moratuwa 16
  • 17. Software Re-Engineering Cycle IT1204 – Software Engineering Institute of Technology, University of Moratuwa 17
  • 18. Inventory Analysis • Every software organisation should have an inventory of all the applications. • Inventory can be nothing more than a spreadsheet model containing information that provides a detailed description of every active application. • By sorting this information according to business criticality, longevity, current maintainability and other local important criteria, candidates for re-engineering appear. • Resource can then be allocated to candidate application for re- engineering work. IT1204 – Software Engineering Institute of Technology, University of Moratuwa 18
  • 19. Document reconstructing • Documentation of a system either explains how it operate or how to use it. • Documentation must be updated. • It may not be necessary to fully document an application. • The system is business critical and must be fully re-documented. IT1204 – Software Engineering Institute of Technology, University of Moratuwa 19
  • 20. Reverse Engineering • Reverse engineering is a process of design recovery. • Reverse engineering tools extracts data, architectural and procedural design information from an existing program. IT1204 – Software Engineering Institute of Technology, University of Moratuwa 20
  • 21. Code Reconstructing • The source code is analysed using a reconstructing tool. • Violations of structured programming construct are noted and code is then reconstruct. • The resultant restructured code is reviewed and tested to ensure that no anomalies have been introduced. IT1204 – Software Engineering Institute of Technology, University of Moratuwa 21
  • 22. Data Restructuring • Data restructuring begins with the reverse engineering activity. • Current data architecture is dissected, and necessary data models are defined. • Data objects and attributes are identified, and existing data structure are reviewed for quality. IT1204 – Software Engineering Institute of Technology, University of Moratuwa 22
  • 23. Forward Engineering • Forward Engineering also called as renovation or reclamation not only for recovers design information from existing software but uses this information to alter or reconstitute the existing system in an effort to improve its overall quality. IT1204 – Software Engineering Institute of Technology, University of Moratuwa 23
  • 24. Thank you IT1204 – Software Engineering Institute of Technology, University of Moratuwa 24

Editor's Notes

  1. The modernization process will be an appropriate option in the following cases: when the programming language or platform is no longer supported. Improvements, patches for bug fixing and security updates no longer work, which makes the app vulnerable. Also, there are lost the options for integration with third-party systems through modern APIs; there is a drastic change in technology. The situation when the initially promising technology is replaced by more successful and advanced alternatives is common in IT. The market is constantly evolving and, if the company wants to keep up with technology, reengineering process becomes a necessity; business processes in the company are changing. If the product was initially confined to the ideal solution of a limited number of tasks in clearly defined processes’ conditions, it may be necessary to make changes to the software, provided most of them are to be changed; if the software is initially poor. This sometimes happens because of an attempt of excessive saving at development or opting for amateur performers. If the solution used limits the company’s performance and does not work well enough, it influences business processes and reengineering might help to achieve a higher-quality product; a technology appears which is perfect for your goals. For example, a completely new market can appear, as happened when the first iPhone came out. This does not happen often nowadays, but still, it may well do.