the world of enterprise solution development with asp.net and c#

36
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

Upload: md-mahedee-hasan

Post on 15-Apr-2017

8.815 views

Category:

Software


0 download

TRANSCRIPT

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

• 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?

• 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...)

• 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...)

"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

• Accounting software

• Business Intelligence (BI)

• Enterprise Resource Planning (ERP)

• Content management system (CMS)

MAHEDEE.NET 6

Categories of EAS

Categories of EAS (cont.…)

• Business process management

• Enterprise asset management (EAM)

• Supply chain management (SCM)

• Customer relationship management (CRM)

MAHEDEE.NET 7

Main consideration of enterprise application

• Cost

• Time

• Quality

• Maintainability

• Manageability

• Availability

MAHEDEE.NET 8

Software Development Life Cycle

MAHEDEE.NET 9

Non Functional Requirement

• Execution qualities

– Security and Usability

• Evolution qualities

– Maintainability

– Extensibility

– Scalability

MAHEDEE.NET 10

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

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

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

Development Risk Management Strategy

MAHEDEE.NET 14

• Development Model

• Business Model

• User Model

• Logical Model

• Technology Model

• Physical Model

MAHEDEE.NET 15

Enterprise Application Model

MAHEDEE.NET 16

Enterprise Application Model (Cont…)

• 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

• 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

• Identifying Business Objects and Services

• Defining Interfaces

• Identifying Business Object Dependencies

• Validating Logical Design

• Tools

– Microsoft Visual Modeler

MAHEDEE.NET 19

Logical Model Tasks

• Evaluating Existing Assets and Interoperability

• Choosing Platforms and Infrastructure

• Choosing Development Tools

MAHEDEE.NET 20

Technology Model Tasks

• 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

• 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

• Time to market

• Scaling to the Web

• Lack of end-to-end development tools.

MAHEDEE.NET 23

Current Challenges

Current Trend of Web Development

Service Oriented Architecture

Application components provide services to other

components via a communication protocol

MAHEDEE.NET 24

Distributed Application Design

MAHEDEE.NET 25

Current Trend of Web Development …

Current Trend of Web Development …

• Big data processing

• Faster

• Asynchronous data processing

MAHEDEE.NET 26

• Quick development tools

• Can develop scale well application

• Service Oriented Application

– Web API

– WCF

– Web Service

MAHEDEE.NET 27

EAS Development Using ASP.NET

• 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

Demo ASP.NET MVC Application

MAHEDEE.NET 29

MAHEDEE.NET 30

ASP.NET Developed Famous Web Applications

MAHEDEE.NET 31

ASP.NET Developed Famous Web Applications

• 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

• 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

• 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

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

36