Eng. Giorgetti Alessandro Software Artisan SID s.r.l.

Slides:



Advertisements
Similar presentations
3 Copyright © 2005, Oracle. All rights reserved. Designing J2EE Applications.
Advertisements

Lab 9: Code Organization User Interface Lab: GUI Lab October 23 rd, 2013.
IS2210: Systems Analysis and Systems Design and Change
1 Pertemuan 12 Design Pattern Matakuliah: T0053/Web Programming Tahun: 2006 Versi: 2.
© conchango Agile Architecture Microsoft Architect Insight Conference Howard van Rooijen
PrimordialCode WebMatrix + Orchard First Impact… Eng. Giorgetti Alessandro Software Artisan SID s.r.l.
OOP Design Patterns Chapters Design Patterns The main idea behind design patterns is to extract the high level interactions between objects and.
Enterprise Smart Clients Architecture, Patterns, Design, Best Practices Keith Elder Manager, Sr. Software Engineer Quicken Loans Blog:
Component Patterns – Architecture and Applications with EJB copyright © 2001, MATHEMA AG Component Patterns Architecture and Applications with EJB JavaForum.
IS6112 Application Modelling and Design Introduction.
© Lethbridge/Laganière 2001 Chapter 9: Architecting and designing software1 Layers Data from IBM-Rational and Craig Larman…
Unit 251 Implementation and Integration Implementation Unit Testing Integration Integration Approaches.
Lecture 23: Software Architectures
Joe xamlcoder.com/blog Silverlight / WPF Consultant.
Systems Design. Analysis involves understanding and documenting user requirements in a clear and unambiguous way. It focuses on the business side and.
T HE B ASICS O F S OFTWARE A RCHITECTURE F OR.NET D EVELOPERS Dan Douglas | Senior Software Developer/ Architect Blog:
TimeTracker 2, Take 1  Servlets Web Interface (jsp) Servlet (business logic and processing) App Engine Datastore Form Submit R/W.
Course Instructor: Aisha Azeem
Software Architecture April-10Confidential Proprietary Master Data Management mainly inspired from Enterprise Master Data Management – An SOA approach.
UNIT-V The MVC architecture and Struts Framework.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse 2.
Prepared By: Prof. Dhara Virani CSE/IT Dept. Dr. Subhash Technical Campus. Junagadh. Chapter 7.
Introduction to the Enterprise Library. Sounds familiar? Writing a component to encapsulate data access Building a component that allows you to log errors.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
International Workshop on Web Engineering ACM Hypertext 2004 Santa Cruz, August 9-13 An Engineering Perspective on Structural Computing: Developing Component-Based.
SWE 316: Software Design and Architecture – Dr. Khalid Aljasser Objectives Lecture 11 : Frameworks SWE 316: Software Design and Architecture  To understand.
Todd Snyder Development Team Lead Infragistics Experience Design Group.
Framework Universal & Infinite Software Solution.
Persistence Store Project Proposal.
Odyssey A Reuse Environment based on Domain Models Prepared By: Mahmud Gabareen Eliad Cohen.
Nicolas Teirlinckx Made for Software Engineering Groep 1 (2009 – 2010)
Spring Framework. Spring Overview Spring is an open source layered Java/J2EE application framework Created by Rod Johnson Based on book “Expert one-on-one.
Design engineering Vilnius The goal of design engineering is to produce a model that exhibits: firmness – a program should not have bugs that inhibit.
COMP 6471 Software Design Methodologies Winter 2006 Dr Greg Butler
FlexElink Winter presentation 26 February 2002 Flexible linking (and formatting) management software Hector Sanchez Universitat Jaume I Ing. Informatica.
Chapter 6 Architectural Design.
L8 - March 28, 2006copyright Thomas Pole , all rights reserved 1 Lecture 8: Software Asset Management and Text Ch. 5: Software Factories, (Review)
Encapsule Systems Reducing Software Development Costs.
Hands-On Microsoft Windows Server Implementing Microsoft Internet Information Services Microsoft Internet Information Services (IIS) –Software included.
Architectural Patterns Support Lecture. Software Architecture l Architecture is OVERLOADED System architecture Application architecture l Architecture.
Silverlight Dev Demo Scott Edmondson NextMinute Application at
Kuali Rice A basic overview…. Kuali Rice Mission First and foremost to provide a consistent development framework and common middleware layer for Kuali.
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 5 Practice: A Generic View Software Engineering: A Practitioner’s Approach, 6/e Chapter.
Building State of the art presentation tiers Nauzad Kapadia
EMEA Beat Schwegler Architect Microsoft EMEA HQ Ingo Rammer Principal Consultant thinktecture
CSPC 464 Fall 2014 Son Nguyen.  Attendance/Roster  Introduction ◦ Instructor ◦ Students  Syllabus  Q & A.
Basel · Baden · Bern · Lausanne · Zürich · Düsseldorf · Frankfurt/M. · Freiburg i. Br. · Hamburg · München · Stuttgart · Wien Microsoft MSDN TechTalk Reusable.
Component Patterns – Architecture and Applications with EJB copyright © 2001, MATHEMA AG Component Patterns Architecture and Applications with EJB Markus.
CS223: Software Engineering Lecture 14: Architectural Patterns.
Design and implementation Chapter 7 – Lecture 1. Design and implementation Software design and implementation is the stage in the software engineering.
Tools Interoperability Workshop ICCS Issues Interchange Problems Solutions –Web services –IS architectures –Common projects –...
Model View Presenter Design Pattern Jay Smith PMO Architect and Evangelist Tyson Foods, Inc.
Mary Ganesan and Lora Strother Campus Tours Using a Mobile Device.
Cake PHP – OOPS approach for PHP
Introduction to .NET Florin Olariu
Architecture Brief Pepper
MVVM Made Simple with Prism
PLM, Document and Workflow Management
Building Custom Workflows
Yii - For the Future - Gen Web Development Platform
Practical Choreography with Spring Cloud
Rich single page applications with SharePoint
Ph.D Status Report: A part of WEBSYS Project
Internet Engineering Course
Systems Development Jerry Post Copyright © 1997
Dependency Inversion principle
FRAMEWORKS AND REUSE What is “Framework”?
Software Engineering and Architecture
ONAP Architecture Principle Review
Logical Architecture & UML Package Diagrams
Presentation transcript:

Eng. Giorgetti Alessandro Software Artisan SID s.r.l.

Graduated Engineer Owner/co-founder of SID s.r.l. Blog:

To be able to use an IoC/DI framework effectively you need to structure your application the right way! Your first problem is an Architectural problem: How to partition an application? How to structure each module? What are the interactions? Dependencies? …

Only When you’ve answered those questions, you can think of how to implement the solution! Only at this stage you can start thinking of which ‘tool’ to use and which ‘best practice’ you can follow to solve your problems!

When you think of an application architecture, usually this is the first thing it come into your mind: DAL Business Logic User Interface Securty Logging Infrastructure

When using a IoC/DI container your application sounds more like this: Security Service IService1 Module1 Logging Service IService2 Module2 Infrastructure Shell Application Framework IService3 Messaging Service

When implementing a module/service Module1 Module2 Infrastructure Shell Application Framework DAL Business Logic User Interface Securty Logging Infrastructure

Keep things simple! Use a top-down approach while defining and designing the application Break the application in modules / features and decouple the more you can: reusability, easy implementation Think using ‘interfaces’ (do not try to implement anything at this stage)…but avoid over- engineering

Design  Interfaces Component configuration, creation, lifecycle  IoC/DI/ServiceLocator, etc… Managing interactions  data storage, shared data, message brokering, etc…

You have plenty of ‘tools’ and ‘patterns’ that helps you implementing your solution: Layered applications Implementation patterns (MVC, MVVM, …) Reuse services

Eng. Giorgetti Alessandro

Inspired by this workshop I’ve started a series of articles on my blog you can check to dig into some of the arguments I proposed here: Silverlight, MVVM … and IoC Silverlight Navigation Framework … and IoC resolve-pages-ioc-container More to come…

Eng. Giorgetti Alessandro