Smart Client Software Factory  2010
Upcoming SlideShare
Loading in...5
×
 

Smart Client Software Factory 2010

on

  • 3,481 views

Smart Client Architecture, create modular, extensible, loosely-couple application

Smart Client Architecture, create modular, extensible, loosely-couple application

Statistics

Views

Total Views
3,481
Views on SlideShare
3,477
Embed Views
4

Actions

Likes
0
Downloads
65
Comments
0

1 Embed 4

http://www.linkedin.com 4

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Smart Client Software Factory  2010 Smart Client Software Factory 2010 Presentation Transcript

  • Smart Client Software Factory 2010
    A Brief Development Guidance -Western Digital #tomysmile – 05 Aug 2010
  • Agenda
    Overview
    Application Layering
    Architecture Patterns
    Development Activities
  • Overview
    SCSF takes advantage of the Microsoft Enterprise Library 2.0 and Composite UI Application Block, using a software factory model to generate the application framework
    Rapid and standardized application development, allowing developers to generate core application frameworks and focus on building the business logic
    End result is an extensible, extendable, modular, maintainable and loosely couple architecture application
  • Application Layering
  • Application Layering cont.
    Presentation – outer layer, exchangeable
    Business
    Services
    Rules
    Data Access
    Modules
    Infrastructure
  • Architecture Patterns
  • Architecture Patterns cont.
    Presentation Pattern
    Dependency Injection / Object Builder
    Observer Pattern
    Composite and Modularity
    Commanding Pattern


  • Development Activities
  • Development Activities cont.
    Architects approach
    Business analyst approach
    Developer approach
    Designer approach
  • Development Activities cont. – Business Analyst Approach
    Data Access Layer
    This layer concern only for database activity (CRUD), no business validation or caching or else.
    Create DAL for each database activity
    LookupDAL, AllocationDAL, BuildRequestDAL
    Business Analyst will need to work closely with database dev / admin and define the output of the result.
    Business Rules Layer
    The main concern of this layer is to provide business specific rules and validation. Rules must be exchangeable and configurable.
    Create Rules as specific and clear as it can in this layer, if no rules required then just passed it on to the upper layer (DAL)
    DataLookupRule, AllocationRule, BuildRequestRule
  • Development Activities cont. – Business Analyst Approach
    Service Layer
    The main concern of this layer is to be the application data End Point and all the data related activities must be through this layer in order to maintain the standard and maintainability.
    Service can be passed to the Business Rule layer or accessing a Web / WCF Services
    Service must be exchangeable, testable and mock able, so always use interface based programming in this layer
    This layer is perfect for caching feature because all the data will need to be retrieve or pass from this layer.
    Eg: DataLookupService, AllocationService
  • Development Activities cont. – Business Analyst Approach
    Presentation Layer
    This is the most outer layer that presents the data looks and feel
    The SCSF use MVP and MVC for the presentation, so it can be extend and exchange either use Web-based, Windows Form-based, WPF-based even Silverlight without having to change the whole codes and project structures.
    Contain 3 sub layer :
    Model – represent the data source ( service layer )
    View – this is the display that user can see
    Presenter / Controller – the hub between data source and the view
    View layer must be dumb enough so it can be replace by Windows Form, Web Form, WPF or Silverlight
  • Development Activities cont – Developer Approach
    The reverse of the Business analyst approach
  • Development Activities cont. – The Flow
    Interface usually prefix with char ‘I’
    Interface
    Concrete
    Interface
    Concrete
    Presenter
    View
  • Development Activities cont. – The Flow
    View Interface (IMainView)
    View Presenter
    View / User Control
    Service Interface
    Infrastructure.Interface
    Infrastructure.Module
    Cache Feature
    Exception Handling (Opt)
    Service Concrete
    Business Interface
    Business Concrete
    DAL / Repository
    Database
  • Development Activities cont. - Configuration
    Application Config
    app.config
    appSettings.config
    appConnectionStrings.config
    Modules Config
    ProfileCatalog.xml
    Messaging Config
    Messages.xml
  • Thank You