SlideShare a Scribd company logo
Contemporary Software Engineering Practices Together with Enterprise Java Technologies  Kenan Sevindik İnnova Bilişim A.Ş.
Software Engineering Problems ,[object Object],[object Object]
Prototyping Plan to Throw One Away (You Will Anyway) -- Brooks
Software Engineering Problems ,[object Object],[object Object]
Refactoring ,[object Object],[object Object],[object Object],[object Object]
Software Engineering Problems
Piecemeal Growth ,[object Object],[object Object],[object Object],[object Object],[object Object],Mir reenters the atmosphere over  Fiji on 22 March, 2001
Why Master Plans Fail? ,[object Object],[object Object],[object Object]
Piecemeal Growth vs Large Lump Development ,[object Object],[object Object],[object Object]
Piecemeal Growth vs Large Lump Development ,[object Object],[object Object],[object Object]
Agile Manifesto ,[object Object],[object Object],[object Object],[object Object]
Agile Manifesto ,[object Object],[object Object],[object Object],[object Object]
Agile Manifesto ,[object Object],[object Object],[object Object],[object Object]
Patterns in Architecture  ,[object Object],[object Object],[object Object],[object Object]
Patterns in Architecture
Patterns in Architecture ,[object Object],[object Object],[object Object],[object Object]
Patterns in Architecture
Design Patterns: Elements of Reusable Object-Oriented Software  ,[object Object],[object Object],[object Object],[object Object]
Question ,[object Object],[object Object]
Design Patterns: Elements of Reusable Object-Oriented Software ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Question ,[object Object],[object Object]
An Example: Decorator Pattern in Java IO Package ,[object Object],java.lang. Object java.io. Reader java.io. InputStreamReader java.io. BufferedReader java.io. FileReader java.io. LineNumberReader
An Example: Decorator Pattern in Java IO Package Client LineNumber Reader FileReader read() read() maintainLineNumber()
An Example: Decorator Pattern in Java IO Package
Refactoring To Patterns ,[object Object],[object Object],[object Object],[object Object]
Recommended Book ,[object Object],[object Object]
Test Driven Development ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Test Driven Development ,[object Object],[object Object],[object Object]
“ No Time For Testing” Death Spiral Stress Write and Run Tests
Recommended Book ,[object Object],[object Object]
Test Driven Development and Continuous Refactoring ,[object Object],[object Object],[object Object],[object Object],[object Object]
Signs of Bad Design ,[object Object],[object Object],[object Object],[object Object],[object Object]
Signs of Bad Design ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Object Oriented Principles ,[object Object],[object Object],[object Object],[object Object]
Why Object Term Is Selected? ,[object Object],[object Object],[object Object],[object Object]
Object Oriented Principles ,[object Object],[object Object],[object Object],[object Object]
Object Oriented Principles ,[object Object],[object Object],[object Object]
Object Oriented Principles ,[object Object],[object Object],[object Object],[object Object],[object Object]
Aspect Oriented Programming ,[object Object],[object Object],[object Object]
Aspect Oriented Programming ,[object Object],[object Object],[object Object]
Question ,[object Object],[object Object]
Recommended Book ,[object Object],[object Object]
Evolution of Enterprise Java ,[object Object],[object Object],[object Object]
Question ,[object Object],[object Object]
Question ,[object Object],[object Object]
Evolution of Enterprise Java ,[object Object],[object Object],[object Object],[object Object],[object Object]
Evolution of Enterprise Java ,[object Object],[object Object],[object Object],[object Object]
Evolution of Enterprise Java ,[object Object],[object Object],[object Object],[object Object],[object Object]
Evolution of Enterprise Java ,[object Object],[object Object],[object Object],[object Object],[object Object]
Evolution of Enterprise Java ,[object Object],[object Object],[object Object],[object Object]
Recommended Book ,[object Object],[object Object]
Spring Application Framework ,[object Object],[object Object],[object Object],[object Object]
Spring Application Framework ,[object Object],[object Object],[object Object]
Spring Application Framework ,[object Object],[object Object],[object Object],[object Object],[object Object]
Spring Application Framework ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Spring Application Framework ,[object Object],[object Object],[object Object],[object Object]
Recommended Book ,[object Object],[object Object]
Hibernate OR Mapping Framework ,[object Object],[object Object],[object Object]
Hibernate OR Mapping Framework ,[object Object],[object Object],[object Object]
Object-Relational Paradigm Mismatch ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Object-Relational Paradigm Mismatch User Address -street -no -zipcode BillingDetails -accountNumber CreditCard BankAccount 1..* 1 create table USERS ( USERNAME varchar(15) not null primary key, NAME varchar(50) not null, ADDRESS varchar(100) ) create table BILLING_DETAILS ( ACCOUNT_NUMBER varchar(10) not null primary key, ACCOUNT_NAME varchar(50) not null, ACCOUNT_TYPE varchar(2) not null, USERNAME varchar(15) foreign key references user )
Object-Relational Paradigm Mismatch ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Object-Relational Paradigm Mismatch ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Object-Relational Paradigm Mismatch public class User { private Set billingDetails; ... } public class BillingDetails { private User user; ... } USER_ID bigint foreign key references USERS USER_ID bigint unique  foreign key references USERS BILLING_DETAILS_ID bigint primary key  foreign key references USERS
Object-Relational Paradigm Mismatch ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Recommended Book ,[object Object],[object Object]
Java Server Faces ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Java Server Faces ,[object Object],[object Object],[object Object],[object Object],[object Object]
JSF MVC Model Model Renderer UI Component Listener Model View Controller
Conclusion ,[object Object],[object Object],[object Object]
Contact Info ,[object Object],[object Object],[object Object],[object Object]

More Related Content

What's hot

Aicd presentation
Aicd presentationAicd presentation
Aicd presentation
kathlewis50
 
SOLID Principles and Design Patterns
SOLID Principles and Design PatternsSOLID Principles and Design Patterns
SOLID Principles and Design Patterns
Ganesh Samarthyam
 
Best practices for agile design
Best practices for agile designBest practices for agile design
Best practices for agile designIgor Moochnick
 
SAD07 - Project Management
SAD07 - Project ManagementSAD07 - Project Management
SAD07 - Project Management
Michael Heron
 
Big Ball of Mud: Software Maintenance Nightmares
Big Ball of Mud: Software Maintenance NightmaresBig Ball of Mud: Software Maintenance Nightmares
Big Ball of Mud: Software Maintenance Nightmares
Gonzalo Rodríguez
 
Agile and Scrum Workshop
Agile and Scrum WorkshopAgile and Scrum Workshop
Agile and Scrum Workshop
Rainer Stropek
 
Arch factory - Agile Design: Best Practices
Arch factory - Agile Design: Best PracticesArch factory - Agile Design: Best Practices
Arch factory - Agile Design: Best PracticesIgor Moochnick
 
Rapid Prototyping for Instructional Design over Time
Rapid Prototyping for Instructional Designover TimeRapid Prototyping for Instructional Designover Time
Rapid Prototyping for Instructional Design over Time
Jean Mullins
 
Pragmatic Not Dogmatic TDD Agile2012 by Joseph Yoder and Rebecca Wirfs-Brock
Pragmatic Not Dogmatic TDD Agile2012 by Joseph Yoder and Rebecca Wirfs-BrockPragmatic Not Dogmatic TDD Agile2012 by Joseph Yoder and Rebecca Wirfs-Brock
Pragmatic Not Dogmatic TDD Agile2012 by Joseph Yoder and Rebecca Wirfs-Brock
Joseph Yoder
 
Master thesis presentation
Master thesis presentationMaster thesis presentation
Master thesis presentation
Tania Pavlenko
 
Common Objections to TDD (and their refutations)
Common Objections to TDD (and their refutations)Common Objections to TDD (and their refutations)
Common Objections to TDD (and their refutations)
Seb Rose
 
Modern Software Architecure Bootcamp - 2nd July 2016 - Bangalore
Modern Software Architecure Bootcamp - 2nd July 2016 - BangaloreModern Software Architecure Bootcamp - 2nd July 2016 - Bangalore
Modern Software Architecure Bootcamp - 2nd July 2016 - Bangalore
Ganesh Samarthyam
 
10 Hinweise für Architekten
10 Hinweise für Architekten10 Hinweise für Architekten
10 Hinweise für Architekten
adesso AG
 
Software Engineering Best Practices @ Nylas
Software Engineering Best Practices @ NylasSoftware Engineering Best Practices @ Nylas
Software Engineering Best Practices @ Nylas
Ben Gotow
 
Anti-Patterns that Stifle Lean UX Teams
Anti-Patterns that Stifle Lean UX TeamsAnti-Patterns that Stifle Lean UX Teams
Anti-Patterns that Stifle Lean UX Teams
Bill Scott
 
Sterling Barton Movemements of a Hypnotic Nature
Sterling Barton Movemements of a Hypnotic NatureSterling Barton Movemements of a Hypnotic Nature
Sterling Barton Movemements of a Hypnotic Nature
Brent Barton
 
Extreme programming
Extreme programmingExtreme programming
Extreme programmingaaina_katyal
 
Loosely Coupled Complexity - Unleash the power of your Domain Model with Comm...
Loosely Coupled Complexity - Unleash the power of your Domain Model with Comm...Loosely Coupled Complexity - Unleash the power of your Domain Model with Comm...
Loosely Coupled Complexity - Unleash the power of your Domain Model with Comm...
Alberto Brandolini
 
Whittle Modeling Wizards 2012
Whittle Modeling Wizards 2012Whittle Modeling Wizards 2012
Whittle Modeling Wizards 2012
jonathw
 
Agile Architecture and Modeling - Where are we Today
Agile Architecture and Modeling - Where are we TodayAgile Architecture and Modeling - Where are we Today
Agile Architecture and Modeling - Where are we Today
Gary Pedretti
 

What's hot (20)

Aicd presentation
Aicd presentationAicd presentation
Aicd presentation
 
SOLID Principles and Design Patterns
SOLID Principles and Design PatternsSOLID Principles and Design Patterns
SOLID Principles and Design Patterns
 
Best practices for agile design
Best practices for agile designBest practices for agile design
Best practices for agile design
 
SAD07 - Project Management
SAD07 - Project ManagementSAD07 - Project Management
SAD07 - Project Management
 
Big Ball of Mud: Software Maintenance Nightmares
Big Ball of Mud: Software Maintenance NightmaresBig Ball of Mud: Software Maintenance Nightmares
Big Ball of Mud: Software Maintenance Nightmares
 
Agile and Scrum Workshop
Agile and Scrum WorkshopAgile and Scrum Workshop
Agile and Scrum Workshop
 
Arch factory - Agile Design: Best Practices
Arch factory - Agile Design: Best PracticesArch factory - Agile Design: Best Practices
Arch factory - Agile Design: Best Practices
 
Rapid Prototyping for Instructional Design over Time
Rapid Prototyping for Instructional Designover TimeRapid Prototyping for Instructional Designover Time
Rapid Prototyping for Instructional Design over Time
 
Pragmatic Not Dogmatic TDD Agile2012 by Joseph Yoder and Rebecca Wirfs-Brock
Pragmatic Not Dogmatic TDD Agile2012 by Joseph Yoder and Rebecca Wirfs-BrockPragmatic Not Dogmatic TDD Agile2012 by Joseph Yoder and Rebecca Wirfs-Brock
Pragmatic Not Dogmatic TDD Agile2012 by Joseph Yoder and Rebecca Wirfs-Brock
 
Master thesis presentation
Master thesis presentationMaster thesis presentation
Master thesis presentation
 
Common Objections to TDD (and their refutations)
Common Objections to TDD (and their refutations)Common Objections to TDD (and their refutations)
Common Objections to TDD (and their refutations)
 
Modern Software Architecure Bootcamp - 2nd July 2016 - Bangalore
Modern Software Architecure Bootcamp - 2nd July 2016 - BangaloreModern Software Architecure Bootcamp - 2nd July 2016 - Bangalore
Modern Software Architecure Bootcamp - 2nd July 2016 - Bangalore
 
10 Hinweise für Architekten
10 Hinweise für Architekten10 Hinweise für Architekten
10 Hinweise für Architekten
 
Software Engineering Best Practices @ Nylas
Software Engineering Best Practices @ NylasSoftware Engineering Best Practices @ Nylas
Software Engineering Best Practices @ Nylas
 
Anti-Patterns that Stifle Lean UX Teams
Anti-Patterns that Stifle Lean UX TeamsAnti-Patterns that Stifle Lean UX Teams
Anti-Patterns that Stifle Lean UX Teams
 
Sterling Barton Movemements of a Hypnotic Nature
Sterling Barton Movemements of a Hypnotic NatureSterling Barton Movemements of a Hypnotic Nature
Sterling Barton Movemements of a Hypnotic Nature
 
Extreme programming
Extreme programmingExtreme programming
Extreme programming
 
Loosely Coupled Complexity - Unleash the power of your Domain Model with Comm...
Loosely Coupled Complexity - Unleash the power of your Domain Model with Comm...Loosely Coupled Complexity - Unleash the power of your Domain Model with Comm...
Loosely Coupled Complexity - Unleash the power of your Domain Model with Comm...
 
Whittle Modeling Wizards 2012
Whittle Modeling Wizards 2012Whittle Modeling Wizards 2012
Whittle Modeling Wizards 2012
 
Agile Architecture and Modeling - Where are we Today
Agile Architecture and Modeling - Where are we TodayAgile Architecture and Modeling - Where are we Today
Agile Architecture and Modeling - Where are we Today
 

Viewers also liked

Developing Reusable Software Components Using MVP, Observer and Mediator Patt...
Developing Reusable Software Components Using MVP, Observer and Mediator Patt...Developing Reusable Software Components Using MVP, Observer and Mediator Patt...
Developing Reusable Software Components Using MVP, Observer and Mediator Patt...
Kenan Sevindik
 
Hibernate Mapping on the Fly
Hibernate Mapping on the FlyHibernate Mapping on the Fly
Hibernate Mapping on the Fly
Edureka!
 
hibernate with JPA
hibernate with JPAhibernate with JPA
hibernate with JPA
Mohammad Faizan
 
20160523 hibernate persistence_framework_and_orm
20160523 hibernate persistence_framework_and_orm20160523 hibernate persistence_framework_and_orm
20160523 hibernate persistence_framework_and_orm
Kenan Sevindik
 
Intro To Hibernate
Intro To HibernateIntro To Hibernate
Intro To Hibernate
Amit Himani
 
ER model to Relational model mapping
ER model to Relational model mappingER model to Relational model mapping
ER model to Relational model mappingShubham Saini
 

Viewers also liked (6)

Developing Reusable Software Components Using MVP, Observer and Mediator Patt...
Developing Reusable Software Components Using MVP, Observer and Mediator Patt...Developing Reusable Software Components Using MVP, Observer and Mediator Patt...
Developing Reusable Software Components Using MVP, Observer and Mediator Patt...
 
Hibernate Mapping on the Fly
Hibernate Mapping on the FlyHibernate Mapping on the Fly
Hibernate Mapping on the Fly
 
hibernate with JPA
hibernate with JPAhibernate with JPA
hibernate with JPA
 
20160523 hibernate persistence_framework_and_orm
20160523 hibernate persistence_framework_and_orm20160523 hibernate persistence_framework_and_orm
20160523 hibernate persistence_framework_and_orm
 
Intro To Hibernate
Intro To HibernateIntro To Hibernate
Intro To Hibernate
 
ER model to Relational model mapping
ER model to Relational model mappingER model to Relational model mapping
ER model to Relational model mapping
 

Similar to Contemporary Software Engineering Practices Together With Enterprise

Module 2 design patterns-2
Module 2   design patterns-2Module 2   design patterns-2
Module 2 design patterns-2
Ankit Dubey
 
Object Oriented Analysis
Object Oriented AnalysisObject Oriented Analysis
Object Oriented Analysis
AMITJain879
 
02 architectures in_context
02 architectures in_context02 architectures in_context
02 architectures in_contextMajong DevJfu
 
Agile Methodologies And Extreme Programming - Svetlin Nakov
Agile Methodologies And Extreme Programming - Svetlin NakovAgile Methodologies And Extreme Programming - Svetlin Nakov
Agile Methodologies And Extreme Programming - Svetlin NakovSvetlin Nakov
 
Software Architecture for Agile Development
Software Architecture for Agile DevelopmentSoftware Architecture for Agile Development
Software Architecture for Agile Development
Hayim Makabee
 
Agile
AgileAgile
Agile
Komal2525
 
Software Patterns
Software PatternsSoftware Patterns
Software Patterns
kim.mens
 
Agile Methodologies And Extreme Programming
Agile Methodologies And Extreme ProgrammingAgile Methodologies And Extreme Programming
Agile Methodologies And Extreme Programming
Utkarsh Khare
 
04 designing architectures
04 designing architectures04 designing architectures
04 designing architecturesMajong DevJfu
 
A New Software Engineeering Approach
A New Software Engineeering ApproachA New Software Engineeering Approach
A New Software Engineeering Approach
Arunit Gupta
 
Applying Agile Values to Enterprise Architecture
Applying Agile Values to Enterprise ArchitectureApplying Agile Values to Enterprise Architecture
Applying Agile Values to Enterprise Architecture
Benjamin Scherrey
 
User Experience Design + Agile: The Good, The Bad, and the Ugly
User Experience Design + Agile: The Good, The Bad, and the UglyUser Experience Design + Agile: The Good, The Bad, and the Ugly
User Experience Design + Agile: The Good, The Bad, and the Ugly
Joshua Randall
 
from-analysis-to-design-the-art-of-object-oriented-programming-2023-6-5-5-17-...
from-analysis-to-design-the-art-of-object-oriented-programming-2023-6-5-5-17-...from-analysis-to-design-the-art-of-object-oriented-programming-2023-6-5-5-17-...
from-analysis-to-design-the-art-of-object-oriented-programming-2023-6-5-5-17-...
Data & Analytics Magazin
 
Agile Software Development Overview
Agile Software Development OverviewAgile Software Development Overview
Agile Software Development Overview
sunilkumar_
 
Devnology back toschool software reengineering
Devnology back toschool software reengineeringDevnology back toschool software reengineering
Devnology back toschool software reengineering
Devnology
 
Lecture-1-Introduction.pdf
Lecture-1-Introduction.pdfLecture-1-Introduction.pdf
Lecture-1-Introduction.pdf
AkilaGamage2
 
Code Craftsmanship Checklist
Code Craftsmanship ChecklistCode Craftsmanship Checklist
Code Craftsmanship Checklist
Ryan Polk
 
Abstract
AbstractAbstract
Abstract
emaye
 
CSE_2014 SE MODULE 1 V.10.pptx
CSE_2014 SE MODULE 1 V.10.pptxCSE_2014 SE MODULE 1 V.10.pptx
CSE_2014 SE MODULE 1 V.10.pptx
AbdulMateen516672
 
CSE_2014 SE MODULE 1 V.10 (2).pptx
CSE_2014 SE MODULE 1 V.10 (2).pptxCSE_2014 SE MODULE 1 V.10 (2).pptx
CSE_2014 SE MODULE 1 V.10 (2).pptx
MrSDeepakRajAssistan
 

Similar to Contemporary Software Engineering Practices Together With Enterprise (20)

Module 2 design patterns-2
Module 2   design patterns-2Module 2   design patterns-2
Module 2 design patterns-2
 
Object Oriented Analysis
Object Oriented AnalysisObject Oriented Analysis
Object Oriented Analysis
 
02 architectures in_context
02 architectures in_context02 architectures in_context
02 architectures in_context
 
Agile Methodologies And Extreme Programming - Svetlin Nakov
Agile Methodologies And Extreme Programming - Svetlin NakovAgile Methodologies And Extreme Programming - Svetlin Nakov
Agile Methodologies And Extreme Programming - Svetlin Nakov
 
Software Architecture for Agile Development
Software Architecture for Agile DevelopmentSoftware Architecture for Agile Development
Software Architecture for Agile Development
 
Agile
AgileAgile
Agile
 
Software Patterns
Software PatternsSoftware Patterns
Software Patterns
 
Agile Methodologies And Extreme Programming
Agile Methodologies And Extreme ProgrammingAgile Methodologies And Extreme Programming
Agile Methodologies And Extreme Programming
 
04 designing architectures
04 designing architectures04 designing architectures
04 designing architectures
 
A New Software Engineeering Approach
A New Software Engineeering ApproachA New Software Engineeering Approach
A New Software Engineeering Approach
 
Applying Agile Values to Enterprise Architecture
Applying Agile Values to Enterprise ArchitectureApplying Agile Values to Enterprise Architecture
Applying Agile Values to Enterprise Architecture
 
User Experience Design + Agile: The Good, The Bad, and the Ugly
User Experience Design + Agile: The Good, The Bad, and the UglyUser Experience Design + Agile: The Good, The Bad, and the Ugly
User Experience Design + Agile: The Good, The Bad, and the Ugly
 
from-analysis-to-design-the-art-of-object-oriented-programming-2023-6-5-5-17-...
from-analysis-to-design-the-art-of-object-oriented-programming-2023-6-5-5-17-...from-analysis-to-design-the-art-of-object-oriented-programming-2023-6-5-5-17-...
from-analysis-to-design-the-art-of-object-oriented-programming-2023-6-5-5-17-...
 
Agile Software Development Overview
Agile Software Development OverviewAgile Software Development Overview
Agile Software Development Overview
 
Devnology back toschool software reengineering
Devnology back toschool software reengineeringDevnology back toschool software reengineering
Devnology back toschool software reengineering
 
Lecture-1-Introduction.pdf
Lecture-1-Introduction.pdfLecture-1-Introduction.pdf
Lecture-1-Introduction.pdf
 
Code Craftsmanship Checklist
Code Craftsmanship ChecklistCode Craftsmanship Checklist
Code Craftsmanship Checklist
 
Abstract
AbstractAbstract
Abstract
 
CSE_2014 SE MODULE 1 V.10.pptx
CSE_2014 SE MODULE 1 V.10.pptxCSE_2014 SE MODULE 1 V.10.pptx
CSE_2014 SE MODULE 1 V.10.pptx
 
CSE_2014 SE MODULE 1 V.10 (2).pptx
CSE_2014 SE MODULE 1 V.10 (2).pptxCSE_2014 SE MODULE 1 V.10 (2).pptx
CSE_2014 SE MODULE 1 V.10 (2).pptx
 

Recently uploaded

Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
Abida Shariff
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
Alan Dix
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
DianaGray10
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
Fwdays
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
Paul Groth
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 

Recently uploaded (20)

Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Epistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI supportEpistemic Interaction - tuning interfaces to provide information for AI support
Epistemic Interaction - tuning interfaces to provide information for AI support
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 

Contemporary Software Engineering Practices Together With Enterprise

  • 1. Contemporary Software Engineering Practices Together with Enterprise Java Technologies Kenan Sevindik İnnova Bilişim A.Ş.
  • 2.
  • 3. Prototyping Plan to Throw One Away (You Will Anyway) -- Brooks
  • 4.
  • 5.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 16.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23. An Example: Decorator Pattern in Java IO Package Client LineNumber Reader FileReader read() read() maintainLineNumber()
  • 24. An Example: Decorator Pattern in Java IO Package
  • 25.
  • 26.
  • 27.
  • 28.
  • 29. “ No Time For Testing” Death Spiral Stress Write and Run Tests
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
  • 58.
  • 59.
  • 60.
  • 61. Object-Relational Paradigm Mismatch User Address -street -no -zipcode BillingDetails -accountNumber CreditCard BankAccount 1..* 1 create table USERS ( USERNAME varchar(15) not null primary key, NAME varchar(50) not null, ADDRESS varchar(100) ) create table BILLING_DETAILS ( ACCOUNT_NUMBER varchar(10) not null primary key, ACCOUNT_NAME varchar(50) not null, ACCOUNT_TYPE varchar(2) not null, USERNAME varchar(15) foreign key references user )
  • 62.
  • 63.
  • 64. Object-Relational Paradigm Mismatch public class User { private Set billingDetails; ... } public class BillingDetails { private User user; ... } USER_ID bigint foreign key references USERS USER_ID bigint unique foreign key references USERS BILLING_DETAILS_ID bigint primary key foreign key references USERS
  • 65.
  • 66.
  • 67.
  • 68.
  • 69. JSF MVC Model Model Renderer UI Component Listener Model View Controller
  • 70.
  • 71.