Agile Framework

Created with TDD agile method with 100% of code coverage

Tools : R#, NCrunch, VS2012
  • (Done) Test FrameWork based on xUnit, Unity, RhinoMock
    • Autogeneration of Mock
    • No Need to Setup and Register dependencies
    • Samples of codes in Unit Tests
  • (Done) Framework Core
    • CommandLineParser
    • Caching (for Wcf or other with Castle Dynamic Proxy)
    • Helper for TDD and decoupling
    • Samples of codes in Unit Tests
  • (Done) Framework NHibernate/FluentNHibernate
  • AutoDiscover Configuration
  • Automapping configuration by Custom Attribute
  • OneToOne relation (because automapper just use one to many or many to many)
  • Overriding Automapping
  • Samples of codes in Unit Tests
  • Integration Test with SqlLite InMemory Database in order to validate mappings
  • ISession Mock Facilities
  • (Done) Framework Threading
  • Producer/Consumer
  • Can Pause and Stop with timeout option
  • (Done) Framework Windows Service
  • Command line parser
  • Easy to debug with option /C
  • TDD Ready
  • (Done) WCF
    • Conventions
  • Easy to configure with code and only one line of configuration
  • Conventions shared for client and host
  • Client (Proxy with Castle Dynamic Proxy)
  1. Integration Tests are ready, I translate it into unit test in order to run it fastly.
  2. try catch exception excluding FaultException or inner...
  3. channel factory en fonction du callback -> duplex, sinon channelfactory
  4. Cache channelfactory per contract type.
  5. UnWrap FaultException.
  6. Error Handling
  7. Easy to managed with Unity Resolving, ...
  8. Managed Channel on error, communication error, ... Proxy Pattern (Dynamic Proxy)
  9. Managed Channel by using IDisposable pattern (Dispose and Close Proxy and Channel)
  10. 2 way for manage channel (one for intranet, close channel after request, another after disposing proxy)
  11. Easy to Test Client (Mock Client Proxy)
  12. Recalling Method in case of Loose Communication (Retrying)
  • (Done) Service/Hosting
  1. Make Easilly WCF Services
  2. Using Protobuf Serialization instead of DataContract
  3. Dependency Injection with Unity for hosted services
  4. Easy to Test Service (IoC Unity)
  5. Easy to Test Host
  6. Hosting on Windows Service
  7. AutoHosting by Derive EntryPointBase class Facilities of Framework.WindowsService
  8. Managed multiple Env like Dev or Prod
  • (TBD) WPF

Last edited May 11, 2013 at 9:42 PM by cboudereau, version 11