Published on

Web Application Framework focused on MVC, SOA, Code Reusability and Business Logic

Published in: Business, Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide


  1. 1. Jll"I>< . net A . Ne’r MVC Web Application Framework
  2. 2. Nowadays . net web applications a ASP. Net a Base Libraries 6 Mix'n'Match of code a Generic Application Framework
  3. 3. Notes on structures a Focus on targets or Focus on structure? a Project Managers, Developers or Designers
  4. 4. ASP. Net 6 Where is the standard in <asp: label>? a Code reusability is up to the developers’ willpower 6 Layer separation is a dream
  5. 5. ASP. Net file, file, file, fil, __l_e, file, __le, file, file, filer met me’ fil le, file, fi le, file, file, file, fil le, file, file, memamam, “ ewamama fimfimfimfiy r mfimfim file, file, file, fil le, file, file, file, file, file, fil if; -I le, file, file, file, file, file, file, file, file, file, file, file, file, file, file, file, file, file, file, file. .. Where is the Logic of the web application? Split in N2 files!
  6. 6. Base Libraries «.2» They help e Where is the bigger picture? a The responsibility remains on the single developer e The quality is dependent on the Library Analyst e It is not a standard approach
  7. 7. l/ ix'n'l/ latch of code e Everyone brings his own experience and ideas, mixed and stewed e In a non—structured environment bugs are the legacy of the previous developer e Different standards applied in different moments: farewell maintainability e Time wasted to do the same thing again and again. And again. ..
  8. 8. Generic Application Framework 62 Where does the logic reside? e MVC or something similar? quite similar? maybe similar? «.22 Easy-to-use or Overcomplicated?
  9. 9. Focus on targets or focus on structure? a Are you committed to the customers’ needs? a Are you investing your time fulfilling the requirements? a Is the pattern clear?
  10. 10. Project Manager, Developer and Designer 6 Project Manager: talks about business a Developer: talks like a geek 6 Designer: knows about pixels
  11. 11. Project Manager, Developer and Designer e Are they speaking the same language? ea Is this language globally understood in your team? e Do they understand each other?
  12. 12. Project Manager, Developer and Designer Business Vision, cust x; needs, UML, I r x = new cust(); r Customer cust. save(); understand each '5‘ Do they . = C’. ’ ' ’ _ other?
  13. 13. One Web Application Three areas of responsibility Many Languages Technical Inferno!
  14. 14. These are the problems!
  15. 15. jinx them!
  16. 16. What is jinx. Net? 3 A strong Model-View-Controller framework for . Net a A SOA approach to web applications 5 A method of maintaining a strong separation among layers a A standard approach to recurrent patterns a . ..and a vision!
  17. 17. Audience: it is different a Project Managers a Analysts 6 Developers o Designers
  18. 18. ANOTHER framework? 3 Based on STANDARDS (no ASP. Net metacode) «a Multiple Environment Management: SOA a Data Centric: XML a Multi-View capability: XSLT a Business Logic: Modules a Code Reusability: Components a . ..visual approach to Analysis & Design!
  19. 19. Wireframe and Site Map a A visual approach that everyone understands e Define the Logic of a web application 9 Specify the requirements a Immediate
  20. 20. Why not? Transforming this. .. customerList newcustomer customerDetails savecustomer . ..into a ready-to-use structure!
  21. 21. 1,. '1 r -‘GBIPBS mulled‘ Layout Expnndfl conapaau D Sounces D User Input: vopcrntoru ‘Fa Each: Anne! “J Yahoolsearch id‘ ‘For Each: Repla. ,1 S I “I , ?‘ Site vesmction . ,F! “°L "TrurEale Content AT1aIysi * . _S°fl [Bahefl-"nah _ Location Exlrac' Union Unique D Url I String I Dale D My pipes . _ L! .«_ JL .1; , v, ‘For Each mum «_. ... a For each item in input lead, not atlribule to | all Items 1] output ham JL .1; , v_ PipeOu1pu(
  22. 22. Visual Modeler o Automatic generation of the Model structure from a sketch, a draw e Maintain applications on targets 6» No need to “code" the structure o Automatic code generation o Visual impact everyone understands
  23. 23. Everyone in his own role 6 A visual approach is a common language 6 Project Managers create the Logic of the application
  24. 24. Service-Oriented Architecture o The Business Logic drives the web application 62 Centralized common Components o Easy maintenance
  25. 25. “M” means Model Data, Information as The logic remains visual o Data generation is the center of development 62 Developers create Information o DTD/ XSD boundary between Model and View
  26. 26. “V" means View User Layout 6 DTD/ XSD boundary between Model and View 6 Strong built-in XHTML base view 6 Designers create Views 6 The Controller applies the correct view to the data to create the required output
  27. 27. “C” means Controller application management 6 The web application is not required to maintain the environment 6 The “Visual Model" defines the logic of the application. The Controller understands. 6 The controller applies security, business logic and merges Data and Layout. ..
  28. 28. Strong Layers Separation 6 Data are managed separately from Views 6 Model and View are synchronized through data definition (DTD, XSD) 6 The controller can address different output of the same data, fulfilling the request of specific consumers (browser, RSS reader) 6 Application Design drives the Model and View, not vice-versa.
  29. 29. Business Logic: Modules 6 Big web application can be split in small interoperable modules 6 Teams can be autonomous 6 Modules can be reused over and over
  30. 30. Code Reusability: Components 6 Code Duplication is Evil! 6 Data should be required from more than one page and in more than one module 6 Components identify specific data, and the framework makes them available from every part of the model
  31. 31. Pages or Actions? 6 Actions are not Views 6 It's like GET and POST 6 You can control the output from the result of the action
  32. 32. Integrated Data Persistency 6 The data-centric model is used for data sources 6 No usage of SQL Statements: the Persistency Manager handles them 6 Think of Objects, forget the rest
  33. 33. Social Networking? 6 Reusable Modules. .. 6 Why shouldn't I use your CMS? 6 Third party modules available for distribution
  34. 34. a NEW framework! 6 Easy multi-level communication 6 Strong role identification 6 Cut down development time 6 Focus on Target 6 Module availability and reusability
  35. 35. .. .those things that don't kill you make you stronger! Question, Comments, Critics? Thank You!