SlideShare a Scribd company logo
Build for the future
Vision tips
1 Build basic modules and wrap them with a set of startup-projects
2 Enhance already built and running project.
Define standard, specification and guidelines.3
4 Achieve software quality factors
5 Define learning path.
Build basic modules and wrap them with a set of startup-projects
 Design and build basic modules based on a flexible and
extendable design
 Document module design
[How to use and how to extend it’s functionality].
 Wrap these modules with a start up project
 Define basic project configuration
 Test all your start-up project functionality for different cases
 Version update have to deal well with old versions.
Start-up
project
Authentication
File uploader
Notification
Mail handler
Build basic modules and wrap them with a set of startup-projects
 MVC architecture mainly target admin tool and small to
medium projects which doesn’t expect to scale.
 Service oriented architecture target medium to big
projects which expected to scale.
 Workflow target mainly for automated systems.
Three start-up projects for different business models.
MVC
Service oriented
Workflow systems
Build basic modules and wrap them with a set of startup-projects
Visualize your design(minimize complexity).
 Use case Diagram
 Provide an overview of system business models
 Layard Diagram
 To clarify system architecture and how modules interact with each other.
 ERD Diagram
 For database design
 Activity Diagram
 To simplify complex and sensitive business cases
 Class Diagram
 Clarify how objects interact with each other and how we apply a specific
design pattern.
Build basic modules and wrap them with a set of startup-projects
Build specification layer (abstraction layer)
 Dependency inversion principle.
 depend on abstractions not on concretions
 Program to an interface, not an implementation
Build basic modules and wrap them with a set of startup-projects
Legacy code (dead code):
 Code which we can’t improve design further
 Code which very difficult to make changes as system tightly coupled
 Code which doesn’t include great unit testing
 Code without any documentation
We don’t have to write more legacy code..
Build basic modules and wrap them with a set of startup-projects
RethinkThink Discover
Vision tips
1 Build basic modules and wrap them with a set of startup-projects
2 Enhance already built and running project.
Define standard, specification and guidelines.3
4 Achieve software quality factors
5 Define learning path.
Enhance already built and running project.
 Project description
 Documentation [deployment documentation]
 Module replacement.
Adapt yourself to deal well with .
Project enhancement and refactoring
 Old technologies.
 Legacy code
 Code which opposes your thinking.
Vision tips
1 Build basic modules and wrap them with a set of startup-projects
2 Enhance already built and running project.
Define standard, specification and guidelines.3
4 Achieve software quality factors
5 Define learning path.
Define standard, specification and guidelines.
 Discover community standard and Best Practices
 Take a look at popular samples (APIs).
 Define your own standard
 Database, API, Naming convention and docs
What to do.
Define standard, specification and guidelines.
 Facilitate interaction and communication among team members.
 Facilitate new candidate to collaborate well with team
 Displays a positive and professional image to clients
why to do.
Vision tips
1 Build basic modules and wrap them with a set of startup-projects
2 Enhance already built and running project.
Define standard, specification and guidelines.3
4 Achieve software quality factors
5 Define learning path.
Achieve software quality factors
Correctness
Security
Scalability
Performance
Maintainability
Achieve software quality factors (correctness)
 Testing is a really important thing to make your code reusable
 Provide unit testing for all startup project modules and sensitive
business cases.
Testing.
Achieve software quality factors (security)
 Build your basic authentication mechanism (stateless, stateful)
 Discover security vulnerabilities and check how your security layer
solve it
 Check how to integrate well to solve un supported vulnerabilities
 Build a separate project to include all security investigations which
categorized into several levels.
 Don’t forget include your basic level into all your startup-projects
Security.
Achieve software quality factors (scalability)
 Design for horizontal scalability
 Build a stateless web application.
Scalability.
Achieve software quality factors (performance)
 speed up data lookups and data retrieving
 Use caches wherever possible
Cashing
Achieve software quality factors (performance)
 Optimize your system on all levels
 Optimize database (indexing, right key, query optimizations)
 Optimize your application
 Optimize your deployment environment (application server, jvm)
Optimization.
Vision tips
1 Build basic modules and wrap them with a set of startup-projects
2 Enhance already built and running project.
Define standard, specification and guidelines.3
4 Achieve software quality factors
5 Define learning path.
Define learning path
 To share and build knowledge among team members.
 Support previews steps.
 Represented in Presentations, Courses
Any questions?!!
Thank you…

More Related Content

What's hot

Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software EngineeringSaqib Raza
 
Mayuri Kulkarni_istqb cv (1)
Mayuri Kulkarni_istqb cv (1)Mayuri Kulkarni_istqb cv (1)
Mayuri Kulkarni_istqb cv (1)mayuri kulkarni
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Developmentbhochhi
 
Coding and testing in Software Engineering
Coding and testing in Software EngineeringCoding and testing in Software Engineering
Coding and testing in Software EngineeringAbhay Vijay
 
Software testing
Software testingSoftware testing
Software testingthaneofife
 
Software testing ppt
Software testing pptSoftware testing ppt
Software testing pptSavyasachi14
 
Software design.edited (1)
Software design.edited (1)Software design.edited (1)
Software design.edited (1)FarjanaAhmed3
 
Unit 1 sepm software myths
Unit 1 sepm software mythsUnit 1 sepm software myths
Unit 1 sepm software mythsKanchanPatil34
 

What's hot (18)

Release Management
Release ManagementRelease Management
Release Management
 
Introduction to CodeFactory
Introduction to CodeFactoryIntroduction to CodeFactory
Introduction to CodeFactory
 
4 stage 5 documentation
4 stage 5   documentation4 stage 5   documentation
4 stage 5 documentation
 
Slides chapters 26-27
Slides chapters 26-27Slides chapters 26-27
Slides chapters 26-27
 
BDD along with Continuous Integration
BDD along with Continuous IntegrationBDD along with Continuous Integration
BDD along with Continuous Integration
 
Seng 123 10-cdst
Seng 123 10-cdstSeng 123 10-cdst
Seng 123 10-cdst
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Code review at large scale
Code review at large scaleCode review at large scale
Code review at large scale
 
.NET Developer
.NET Developer.NET Developer
.NET Developer
 
Mayuri Kulkarni_istqb cv (1)
Mayuri Kulkarni_istqb cv (1)Mayuri Kulkarni_istqb cv (1)
Mayuri Kulkarni_istqb cv (1)
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
Coding and testing in Software Engineering
Coding and testing in Software EngineeringCoding and testing in Software Engineering
Coding and testing in Software Engineering
 
Software testing
Software testingSoftware testing
Software testing
 
Python: Design Patterns
Python: Design PatternsPython: Design Patterns
Python: Design Patterns
 
Software testing ppt
Software testing pptSoftware testing ppt
Software testing ppt
 
Software design.edited (1)
Software design.edited (1)Software design.edited (1)
Software design.edited (1)
 
Software testing
Software testingSoftware testing
Software testing
 
Unit 1 sepm software myths
Unit 1 sepm software mythsUnit 1 sepm software myths
Unit 1 sepm software myths
 

Similar to Build for the future

Fundamentals of software development
Fundamentals of software developmentFundamentals of software development
Fundamentals of software developmentPratik Devmurari
 
System Development Life Cycle Overview.ppt
System Development Life Cycle Overview.pptSystem Development Life Cycle Overview.ppt
System Development Life Cycle Overview.pptKENNEDYDONATO1
 
Software Development Standard Operating Procedure
Software Development Standard Operating Procedure Software Development Standard Operating Procedure
Software Development Standard Operating Procedure rupeshchanchal
 
Soft.Engg. UNIT 1.pptx
Soft.Engg. UNIT 1.pptxSoft.Engg. UNIT 1.pptx
Soft.Engg. UNIT 1.pptxKalpna Saharan
 
Softweare Engieering
Softweare Engieering Softweare Engieering
Softweare Engieering Huda Alameen
 
Basics of software engineering
Basics of software engineeringBasics of software engineering
Basics of software engineeringMadhav Suratkar
 
Code campiasi scm-project-gabriel-cristescu-ditech
Code campiasi scm-project-gabriel-cristescu-ditechCode campiasi scm-project-gabriel-cristescu-ditech
Code campiasi scm-project-gabriel-cristescu-ditechCodecamp Romania
 
Software engineering introduction
Software engineering introductionSoftware engineering introduction
Software engineering introductionVishal Singh
 
Elementary Probability theory Chapter 2.pptx
Elementary Probability theory Chapter 2.pptxElementary Probability theory Chapter 2.pptx
Elementary Probability theory Chapter 2.pptxethiouniverse
 
Testing Strategies for Node.pdf
Testing Strategies for Node.pdfTesting Strategies for Node.pdf
Testing Strategies for Node.pdfinfowindtech
 
DevOps and Build Automation
DevOps and Build AutomationDevOps and Build Automation
DevOps and Build AutomationHeiswayi Nrird
 
ISE_Lecture Week 2-SW Process Models.ppt
ISE_Lecture Week 2-SW Process Models.pptISE_Lecture Week 2-SW Process Models.ppt
ISE_Lecture Week 2-SW Process Models.pptHumzaWaris1
 
16103271 software-testing-ppt
16103271 software-testing-ppt16103271 software-testing-ppt
16103271 software-testing-pptatish90
 
01 fse software&sw-engineering
01 fse software&sw-engineering01 fse software&sw-engineering
01 fse software&sw-engineeringMohesh Chandran
 
Software engineering
Software engineeringSoftware engineering
Software engineeringSubha Selvam
 
Introduction-to-the-Waterfall-Model.pptx
Introduction-to-the-Waterfall-Model.pptxIntroduction-to-the-Waterfall-Model.pptx
Introduction-to-the-Waterfall-Model.pptxAsadBaig49
 

Similar to Build for the future (20)

Fundamentals of software development
Fundamentals of software developmentFundamentals of software development
Fundamentals of software development
 
System Development Life Cycle Overview.ppt
System Development Life Cycle Overview.pptSystem Development Life Cycle Overview.ppt
System Development Life Cycle Overview.ppt
 
Software Development Standard Operating Procedure
Software Development Standard Operating Procedure Software Development Standard Operating Procedure
Software Development Standard Operating Procedure
 
Soft.Engg. UNIT 1.pptx
Soft.Engg. UNIT 1.pptxSoft.Engg. UNIT 1.pptx
Soft.Engg. UNIT 1.pptx
 
Se lec 3
Se lec 3Se lec 3
Se lec 3
 
Softweare Engieering
Softweare Engieering Softweare Engieering
Softweare Engieering
 
Basics of software engineering
Basics of software engineeringBasics of software engineering
Basics of software engineering
 
Code campiasi scm-project-gabriel-cristescu-ditech
Code campiasi scm-project-gabriel-cristescu-ditechCode campiasi scm-project-gabriel-cristescu-ditech
Code campiasi scm-project-gabriel-cristescu-ditech
 
Software engineering introduction
Software engineering introductionSoftware engineering introduction
Software engineering introduction
 
Elementary Probability theory Chapter 2.pptx
Elementary Probability theory Chapter 2.pptxElementary Probability theory Chapter 2.pptx
Elementary Probability theory Chapter 2.pptx
 
07 fse implementation
07 fse implementation07 fse implementation
07 fse implementation
 
Testing Strategies for Node.pdf
Testing Strategies for Node.pdfTesting Strategies for Node.pdf
Testing Strategies for Node.pdf
 
DevOps and Build Automation
DevOps and Build AutomationDevOps and Build Automation
DevOps and Build Automation
 
Kasi Resume
Kasi ResumeKasi Resume
Kasi Resume
 
ISE_Lecture Week 2-SW Process Models.ppt
ISE_Lecture Week 2-SW Process Models.pptISE_Lecture Week 2-SW Process Models.ppt
ISE_Lecture Week 2-SW Process Models.ppt
 
16103271 software-testing-ppt
16103271 software-testing-ppt16103271 software-testing-ppt
16103271 software-testing-ppt
 
Gcs day1
Gcs day1Gcs day1
Gcs day1
 
01 fse software&sw-engineering
01 fse software&sw-engineering01 fse software&sw-engineering
01 fse software&sw-engineering
 
Software engineering
Software engineeringSoftware engineering
Software engineering
 
Introduction-to-the-Waterfall-Model.pptx
Introduction-to-the-Waterfall-Model.pptxIntroduction-to-the-Waterfall-Model.pptx
Introduction-to-the-Waterfall-Model.pptx
 

Recently uploaded

De mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FMEDe mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FMEJelle | Nordend
 
AI/ML Infra Meetup | Perspective on Deep Learning Framework
AI/ML Infra Meetup | Perspective on Deep Learning FrameworkAI/ML Infra Meetup | Perspective on Deep Learning Framework
AI/ML Infra Meetup | Perspective on Deep Learning FrameworkAlluxio, Inc.
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2
 
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...rajkumar669520
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTier1 app
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxwottaspaceseo
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageGlobus
 
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...Alluxio, Inc.
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamtakuyayamamoto1800
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfGlobus
 
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?XfilesPro
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsGlobus
 
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Globus
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessWSO2
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyanic lab
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Shahin Sheidaei
 

Recently uploaded (20)

De mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FMEDe mooiste recreatieve routes ontdekken met RouteYou en FME
De mooiste recreatieve routes ontdekken met RouteYou en FME
 
AI/ML Infra Meetup | Perspective on Deep Learning Framework
AI/ML Infra Meetup | Perspective on Deep Learning FrameworkAI/ML Infra Meetup | Perspective on Deep Learning Framework
AI/ML Infra Meetup | Perspective on Deep Learning Framework
 
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital TransformationWSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
WSO2Con2024 - WSO2's IAM Vision: Identity-Led Digital Transformation
 
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
Facemoji Keyboard released its 2023 State of Emoji report, outlining the most...
 
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERRORTROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
TROUBLESHOOTING 9 TYPES OF OUTOFMEMORYERROR
 
How Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptxHow Recreation Management Software Can Streamline Your Operations.pptx
How Recreation Management Software Can Streamline Your Operations.pptx
 
SOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBrokerSOCRadar Research Team: Latest Activities of IntelBroker
SOCRadar Research Team: Latest Activities of IntelBroker
 
Understanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSageUnderstanding Globus Data Transfers with NetSage
Understanding Globus Data Transfers with NetSage
 
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
AI/ML Infra Meetup | Improve Speed and GPU Utilization for Model Training & S...
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
 
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoamOpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
OpenFOAM solver for Helmholtz equation, helmholtzFoam / helmholtzBubbleFoam
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
 
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
How Does XfilesPro Ensure Security While Sharing Documents in Salesforce?
 
First Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User EndpointsFirst Steps with Globus Compute Multi-User Endpoints
First Steps with Globus Compute Multi-User Endpoints
 
Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...Developing Distributed High-performance Computing Capabilities of an Open Sci...
Developing Distributed High-performance Computing Capabilities of an Open Sci...
 
Accelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with PlatformlessAccelerate Enterprise Software Engineering with Platformless
Accelerate Enterprise Software Engineering with Platformless
 
Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024Globus Connect Server Deep Dive - GlobusWorld 2024
Globus Connect Server Deep Dive - GlobusWorld 2024
 
Cyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdfCyaniclab : Software Development Agency Portfolio.pdf
Cyaniclab : Software Development Agency Portfolio.pdf
 
Corporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMSCorporate Management | Session 3 of 3 | Tendenci AMS
Corporate Management | Session 3 of 3 | Tendenci AMS
 
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
Gamify Your Mind; The Secret Sauce to Delivering Success, Continuously Improv...
 

Build for the future

  • 1. Build for the future
  • 2. Vision tips 1 Build basic modules and wrap them with a set of startup-projects 2 Enhance already built and running project. Define standard, specification and guidelines.3 4 Achieve software quality factors 5 Define learning path.
  • 3. Build basic modules and wrap them with a set of startup-projects  Design and build basic modules based on a flexible and extendable design  Document module design [How to use and how to extend it’s functionality].  Wrap these modules with a start up project  Define basic project configuration  Test all your start-up project functionality for different cases  Version update have to deal well with old versions. Start-up project Authentication File uploader Notification Mail handler
  • 4. Build basic modules and wrap them with a set of startup-projects  MVC architecture mainly target admin tool and small to medium projects which doesn’t expect to scale.  Service oriented architecture target medium to big projects which expected to scale.  Workflow target mainly for automated systems. Three start-up projects for different business models. MVC Service oriented Workflow systems
  • 5. Build basic modules and wrap them with a set of startup-projects Visualize your design(minimize complexity).  Use case Diagram  Provide an overview of system business models  Layard Diagram  To clarify system architecture and how modules interact with each other.  ERD Diagram  For database design  Activity Diagram  To simplify complex and sensitive business cases  Class Diagram  Clarify how objects interact with each other and how we apply a specific design pattern.
  • 6. Build basic modules and wrap them with a set of startup-projects Build specification layer (abstraction layer)  Dependency inversion principle.  depend on abstractions not on concretions  Program to an interface, not an implementation
  • 7. Build basic modules and wrap them with a set of startup-projects Legacy code (dead code):  Code which we can’t improve design further  Code which very difficult to make changes as system tightly coupled  Code which doesn’t include great unit testing  Code without any documentation We don’t have to write more legacy code..
  • 8. Build basic modules and wrap them with a set of startup-projects RethinkThink Discover
  • 9. Vision tips 1 Build basic modules and wrap them with a set of startup-projects 2 Enhance already built and running project. Define standard, specification and guidelines.3 4 Achieve software quality factors 5 Define learning path.
  • 10. Enhance already built and running project.  Project description  Documentation [deployment documentation]  Module replacement. Adapt yourself to deal well with . Project enhancement and refactoring  Old technologies.  Legacy code  Code which opposes your thinking.
  • 11. Vision tips 1 Build basic modules and wrap them with a set of startup-projects 2 Enhance already built and running project. Define standard, specification and guidelines.3 4 Achieve software quality factors 5 Define learning path.
  • 12. Define standard, specification and guidelines.  Discover community standard and Best Practices  Take a look at popular samples (APIs).  Define your own standard  Database, API, Naming convention and docs What to do.
  • 13. Define standard, specification and guidelines.  Facilitate interaction and communication among team members.  Facilitate new candidate to collaborate well with team  Displays a positive and professional image to clients why to do.
  • 14. Vision tips 1 Build basic modules and wrap them with a set of startup-projects 2 Enhance already built and running project. Define standard, specification and guidelines.3 4 Achieve software quality factors 5 Define learning path.
  • 15. Achieve software quality factors Correctness Security Scalability Performance Maintainability
  • 16. Achieve software quality factors (correctness)  Testing is a really important thing to make your code reusable  Provide unit testing for all startup project modules and sensitive business cases. Testing.
  • 17. Achieve software quality factors (security)  Build your basic authentication mechanism (stateless, stateful)  Discover security vulnerabilities and check how your security layer solve it  Check how to integrate well to solve un supported vulnerabilities  Build a separate project to include all security investigations which categorized into several levels.  Don’t forget include your basic level into all your startup-projects Security.
  • 18. Achieve software quality factors (scalability)  Design for horizontal scalability  Build a stateless web application. Scalability.
  • 19. Achieve software quality factors (performance)  speed up data lookups and data retrieving  Use caches wherever possible Cashing
  • 20. Achieve software quality factors (performance)  Optimize your system on all levels  Optimize database (indexing, right key, query optimizations)  Optimize your application  Optimize your deployment environment (application server, jvm) Optimization.
  • 21. Vision tips 1 Build basic modules and wrap them with a set of startup-projects 2 Enhance already built and running project. Define standard, specification and guidelines.3 4 Achieve software quality factors 5 Define learning path.
  • 22. Define learning path  To share and build knowledge among team members.  Support previews steps.  Represented in Presentations, Courses

Editor's Notes

  1. In Slide Show mode, select the arrows to visit links.
  2. In Slide Show mode, select the arrows to visit links.