Page 1
The world of Enterprise solution development with ASP.NET & C#
Md. Mahedee Hasan Microsoft MVP on ASP.NET/IIS
Software Architect, Leadsoft Bangladesh Limited
Trainer, C#.NET Applied OOP
Jointly organized by Bangladesh Hi-Tech Park Authority and Leads Technology Limited
Technical blog writer on http://mahedee.net
1
Page 2
• Enterprise software - Enterprise application software (EAS)
• Satisfy needs of Organization
• Vary from businesses
• Information system for whole organization
• Can be a development tool
MAHEDEE.NET 2
What is Enterprise software?
Page 3
• Big business application.
• Enterprise applications are
– Complex
– Scalable
– Distributed
– Component based
– Mission critical
• In a word it is a highly complex system
MAHEDEE.NET 3
What is Enterprise software? (Contd...)
Page 4
• Large
– A multi-user, multi-machine, multi-component
– Manipulate massive data
– Distributed resources, and complex logic
• Business Oriented
– Purpose to meet specific business requirements.
– Related to financial value & Transaction
MAHEDEE.NET 4
What is Enterprise software? (Contd...)
Page 5
"Enterprise applications are about the display,
manipulation, and storage of large amounts of often complex data and the support or
automation of business processes with that data.“ - Martin Fowler
MAHEDEE.NET 5
Definition of EAS
Page 6
• Accounting software
• Business Intelligence (BI)
• Enterprise Resource Planning (ERP)
• Content management system (CMS)
MAHEDEE.NET 6
Categories of EAS
Page 7
Categories of EAS (cont.…)
• Business process management
• Enterprise asset management (EAM)
• Supply chain management (SCM)
• Customer relationship management (CRM)
MAHEDEE.NET 7
Page 8
Main consideration of enterprise application
• Cost
• Time
• Quality
• Maintainability
• Manageability
• Availability
MAHEDEE.NET 8
Page 9
Software Development Life Cycle
MAHEDEE.NET 9
Page 10
Non Functional Requirement
• Execution qualities
– Security and Usability
• Evolution qualities
– Maintainability
– Extensibility
– Scalability
MAHEDEE.NET 10
Page 11
Enterprise application design consideration
• Must meet business goals.
– Satisfying hundreds or thousands of separate requirements
• How soon it must be delivered.
• Its budget.
MAHEDEE.NET 11
Page 12
Enterprise application design consideration
• How many people will develop, test, and maintain it?
• How many concurrent users it must support?
• Performance and ease of use.
MAHEDEE.NET 12
Page 13
Enterprise application design consideration …
• Hardware it must run on.
• Where it will be deployed?
• What security is required?
• How long you expect to use it.
MAHEDEE.NET 13
Page 14
Development Risk Management Strategy
MAHEDEE.NET 14
Page 15
• Development Model
• Business Model
• User Model
• Logical Model
• Technology Model
• Physical Model
MAHEDEE.NET 15
Enterprise Application Model
Page 16
MAHEDEE.NET 16
Enterprise Application Model (Cont…)
Page 17
• Determine project cost.
• Plan and maintain the budget.
• Identify and set priorities.
• Manage personnel.
• Negotiate contracts.
• Make business projections.
MAHEDEE.NET 17
Identifying Business Requirements
Page 18
• Identify users and their roles.
• Gather input from users.
• Document usage scenarios.
• Validate with users.
• Validate against the other models.
MAHEDEE.NET 18
User Model Tasks
Page 19
• Identifying Business Objects and Services
• Defining Interfaces
• Identifying Business Object Dependencies
• Validating Logical Design
• Tools
– Microsoft Visual Modeler
MAHEDEE.NET 19
Logical Model Tasks
Page 20
• Evaluating Existing Assets and Interoperability
• Choosing Platforms and Infrastructure
• Choosing Development Tools
MAHEDEE.NET 20
Technology Model Tasks
Page 21
• Visual Studio
• .NET Platform and Programming Languages
• Microsoft Team Foundation Sever
• Windows Server
• Microsoft® Internet Information Server (IIS).
• Microsoft® Internet Explorer or Edge.
• Microsoft® SQL Server™.
MAHEDEE.NET 21
Technology Model Tools
Page 22
• Visual Studio
– A Powerful IDE
– Rich Visual Interface
– Support Drag and Drop
– Single IDE for all languages
– Development is much faster than other IDE
– Intelli-Sense concept works best in Visual Studio
– Debugging is much easier and user friendly
MAHEDEE.NET 22
Enterprise Software Development Tool
Page 23
• Time to market
• Scaling to the Web
• Lack of end-to-end development tools.
MAHEDEE.NET 23
Current Challenges
Page 24
Current Trend of Web Development
Service Oriented Architecture
Application components provide services to other
components via a communication protocol
MAHEDEE.NET 24
Page 25
Distributed Application Design
MAHEDEE.NET 25
Current Trend of Web Development …
Page 26
Current Trend of Web Development …
• Big data processing
• Faster
• Asynchronous data processing
MAHEDEE.NET 26
Page 27
• Quick development tools
• Can develop scale well application
• Service Oriented Application
– Web API
– WCF
– Web Service
MAHEDEE.NET 27
EAS Development Using ASP.NET
Page 28
• Disconnected Data design
• Compiled and faster
• Variation in web development
– ASP.NET MVC, ASP.NET Web form and Templates
MAHEDEE.NET 28
EAS Development Using ASP.NET
Page 29
Demo ASP.NET MVC Application
MAHEDEE.NET 29
Page 30
MAHEDEE.NET 30
ASP.NET Developed Famous Web Applications
Page 31
MAHEDEE.NET 31
ASP.NET Developed Famous Web Applications
Page 32
• Most of leading software company works on .NET platform • .NET is now market leader • In 2011-2012
– Export 70.81 million USD – Business growth 56.28%
• In 2012-2013 – Export 101.63 million USD – Business growth 43.53%
• Expertise focus among Bangladesh Software Developers – .NET Developers 77% – MS SQL Server 70% – ASP.NET 60%
MAHEDEE.NET 32
Prospect of ASP.NET in Bangladesh
Page 33
• ASP.NET 5 is the next version of ASP.NET
• MVC 6 is a part of ASP.NET 5
• MVC 6 merges 3 frameworks into a single framework
– ASP.NET MVC, Web API 2, Web Pages 2
• ASP.NET 5 run on new composable pipeline
• MVC 6 Can be self hosted
MAHEDEE.NET 33
What’s new in ASP.NET 5
Page 34
• Cloud optimized
• Environment based configuration system
• Dependency Injection
– implementing the IServiceProvider interface
• New file type in MVC 6
– Config.json, Project.json, Startup.cs, Global.json
MAHEDEE.NET 34
What’s new in ASP.NET 5
Page 35
If any questions ASP.NET, IIS, .NET Framework, C#, SQL Sever and Design Pattern, search here:
http://mahedee.net
Email me:
[email protected]
[email protected]
Tag me in facebook group post
https://www.facebook.com/groups/MSDeveloper/
https://www.facebook.com/groups/techshareonline/
https://www.facebook.com/groups/techforumusercommunity/
All slides, Including some training slide here
http://www.slideshare.net/mahedee19
Me in Facebook:
https://facebook.com/mahedee19
Me in Linkedin:
https://www.linkedin.com/in/mahedee
MAHEDEE.NET 35
Q&A