AIM Business Driven Data Solutions Logo

The Higest Quality, Innovative Websites using Microsoft tools such as ASP.Net MVC, Visual Studio
Google Analytics, AdWords, MOZ, semRush, Screaming Frog


Microsoft Visual Studio

  • ASP.Net MVC
  • CSS & Master Pages
  • Bootstrap & Angular
  • OWIN Authentication
  • Mobile & Desktop Pages

  • Team Collaboration
  • Kanban & Scrum Dashboards
  • User Story Backlog
  • Work Items and Tasks
  • Agile, MSF, and Waterfall

  • Source Control
  • Dev, UAT, Prod Integration
  • Branch and Merge
  • Code Version Tracking
  • Responsive Design

The 8th "C" | Website Design with a Focus on the 7 Key Design Elements, plus our secret, unique 8th "C"

Context

Layout and Design

Content

Text, Image, Videos, and Sounds

Community

User-to-User Communication

Communication

Site-to_User and User-to-Site

Connection

Degree Site is Linked to Other Sites

Commerce

Enable Commercial Transactions

Customization

Personalized Content and Personalizable Site
Crucial Elements for an Ecommerce Website

Crucial Elements for an E-Commerce Website

Visual Studio Services


AIM uses the Microsoft Visual Studio library of tools to plan, develop, and deliver modern webapps and business intelligence portals. This development requires supporting tools for team collaboration as well as collaboration between the development team and the operations team (DevOps).

Webapp features we provide include responsive design, mobile and desktop pages, user profile management and authentication, social media branding, eCommerece, and Search Engine Optimization. As for support tools, AIM can provide services no matter what support tools you have chosen (TFS, GIT, Subversion, Bamboo, Atlassian), but we specialize in Microsoft Team Foundation Server combined with DevOps tools offered by Redgate. Redgate.com


In the content below, topics are divided into 4 sections:

  • Web-based Application (ASP.Net MVC) Services
  • Agile Methodology
  • Team Foundation Server (TFS)
  • Development & Operations (Dev-Ops)

Web-based Application (ASP.Net MVC) Services


Microsoft ASP.Net MVC

AIM uses the Microsoft Visual Studio library of tools to plan, develop, and deliver modern webapps and business intelligence portals.

Webapp features we provide include responsive design, mobile and desktop pages, user profile management and authentication, social media branding, eCommerece, and Search Engine Optimization. Our AIM website is an example of a basic ASP.Net MVC website using bootstrap.

Thanks to responsive design, weather you browse this site in Edge, Chrome, Android, iPhone, or even Kindle, the website will resize and stack the areas that build out to the right on larger screens such as columns. The images and videos on this website can even be responsive. For unique situations where responsive design does not provide the mobile, or Kindle experience that you want to deliver, we can design separate views for each device.

Many websites need to provide the ability for users, employees, or customers to login and logout. This process is called authentication. AIM can offer OWIN authentication, a technology that allows users to not only login and logout using a system provided user name and password, but it also allows users to authenticate using their social media accounts such as Facebook and Twitter.

Once authentication is deployed, you will quickly realize that you need a way to manage and users can manage account profile information. Building on the OWIN technology above, we can extend the model to include a user profile table that can be viewed and maintained by the user. We also need an administrative view to allow for assigning users to roles, deleting and updating users, and approving website registrations that create a new user profile. This is user profile management.

Social Media and Social Media Branding remains an essential focus of website design and the continuous involvement and participation in organizational and personal collaboration and sharing of our professional acumen to help build awareness in the Social Media world and brand.

An e-Commerce website has many technical concerns. Integrating with PayPay and testing this integration using the PayPal developer sandbox is one method to enable an e-commerce website. Integrating with PayPal allows you to design a custom shopping cart using your own product images and information from your own website and database, yet let PayPal manage the financial exchange and the security concerns.

Search Engine Optimization is a huge service that AIM can help with. Starting with making sure your website used a static IP address and is properly registered and accepted by the major search engine services. Techniques like defining the page meta-data tags, using dashed (-) us certain naming situations, and including inbound and outbound linking strategies.

WebApp Features

WebApp Design Features
  • Responsive Design
  • Custom CSS Style Sheets
  • Navigation, Menus, Buttons, & Forms
  • Font Management
  • Multi-Media Driven
  • Branding, Themes, Logos, Diagrams, Figures
  • Social Media Publishing
WebApp Architecture Features
  • User Profile Management
  • Social Media Login
  • Web Page Routing
  • Product Catalog Management
  • eCommerce Shopping Carts | PayPal
  • Email Collection and Harvesting
  • Search Engine Optimization
WebApp Presentation Features
  • Desktop and Mobile Views (Pages)
  • JavaScript Carousels, Sliders, & Accordions
  • Alerting and Validation
  • Layout (Master Page) Designs
  • Newsletters, User Forums, Coupons
  • FavIcon for Shared Views (Pages)
  • About and Contact Pages with Email Services
  • Bing Map Pin Points and Interactive GPS

Why Develop a WebApp?

In the arena of website development, including mobile, there are 3 types of development styles. These 3 styles are as follows:

  • Native Application
  • Hybrid Applications
  • Web Applications
A native application can only function in its native environment. A hybrid can attempt to bridge between a native and web applications, but there a limitations to hybrid technologies.

The real winner in terms of cross platform compatibility, is web applications. This cross platform compatibility allows for a smaller code footprint because one set of code can server all different platforms and devices. (Android, iPhone, Windows, iMac, Tablets, Kindle).

On the other side of the diagram shown, Native Applications (Android, iPhone, Windows, iMac, Tablets, Kindle) require separate code to serve each platform and device.

Cross-Platform Comparison



Agile Lifecycle

Agile Methodology

Most companies today have embraced the Agile Methodology due to its flexibility and its focus on divining effort into small atomic tasks. One benefit of dividing the effort this way is that users, developers, and clients have continuous visibility in to the development process.

In an Agile work flow, business analysts will gather the requirements for projects called "User Stories." These user stories go into what is called a Story Backlog. These stories are then assigned to developers by either the project manager, or a scrum leader.

Once a story has been assigned to a developer, the developer will review the story requirements and create a list of tasks (TFS: work items) that will represent the estimated effort for the story.

Both the user stories and the tasks can be displayed on Kanban & Scrum Dashboards. We can track the Estimated Effort, the Actual Effort, and the Velocity. We can also track Capacity versus Utilization.

These user stories that are encapsulated with tasks provided by the developer are assigned to sprints by the project manager, or scrum master. These sprints are usually 2 weeks of functional development with 1 week of delivery, review, and feedback for a total of 3 weeks per sprint (iteration).

At the end of the feedback process, we go through an approval process. The stories that are approved will be assigned a release id and begin the release process. Stories that are not approved are recorded and changes will be incorporated into future iterations. For smaller issues, we will adjust and track keeping with the flexible nature of the Agile Methodology. Vary rarely will a feedback change require changes that will ripple throughout the entire Epic. An Epic is a larger grouping of User Stories that represent a larger, or bigger picture of the overall development goal.

Once these feedback adjustments and changes have been managed by collectively modified in the current and, or future iterations, the Next 3 week iteration begins. This 3 week iterative cycle is repeated for the required duration determined by the Business Analysts and Development Team during the Story Estimation Meetings.

One excellent way to estimate effort with a development team is by using a free "Planning Poker" Agile User Story Estimating plication. These estimation applications use a Fibonacci sequence. The reason for using the Fibonacci sequence is to reflect the inherent uncertainty in estimating larger items of effort.


Team Foundation Server (TFS)

When discussing development team collaboration, the topic in the Microsoft product line is Team Foundation Server. I want to point out that team collaboration in this sense can include executive leadership, middle managers, business analysts, project managers, developers from other teams, as well as your team.

At the heart of Team Foundation Server is Visual Studio. In fact, TFS is an installable extension to Visual Studios. It is also true that TFS is also an expendable application like Visual Studio. The user interface inside Visual Studio is called Team Explorer.

Besides Team Explorer, there is also a web interface. TFS as an application also interfaces well with SharePoint, Office, and Project. TFS also support lab (training lab) management features.

TFS Features

  • Project Management
  • Requirements Management
  • Version Control
  • Test Case Management
  • Build Automation
  • Reporting

Microsoft Team Fourdation Server

DevOps

DevOps

In terms of collaboration between the development team and the operations team such as a database administrator (dba), we enter the discussion of DevOps. DevOps is short for development and operations. In terms of developers, it can mean many developers and many teams of developers. In terms of operations, it may mean one dba, or it may mean a dba team and an approval process with a team of its own.

At the core of DevOps is source control. Source control is where we manage and administrate the enterprise source code that we develop. We can branch and merge code, track versions, protect intellectual property by securing access to the enterprise code stored in source control. This represents the development side of DevOps.

Changes that developers make that are checked into source control will trigger what is called continuous integration. Continuous integration is the continual process of building the Microsoft Solution and releasing the build according to a release management schedule maintained by operations. This represents the operations side of DevOps.

Operations will manage things like the release life cycle that may look like a migration from a development environment, to a test environment, to a final user acceptance (UAT) environment . Once user acceptance has been approved, operations will initiate the release and deployment of the code following their set change control policies. Ideal continuous integration will build the code on a set schedule such as nightly. In some environments, like development, automated builds may fail, however at higher level release environments, such as UAT, build should rarely fail during scheduled continuous integration.