1 developing a website boston university – met tm448 – spring 2013 marcus goncalves

29
1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

Upload: tiffany-black

Post on 24-Dec-2015

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

1

Developing a Website

Boston University – METTM448 – Spring 2013Marcus Goncalves

Page 2: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

Many of the topics we will cover are based on a book that I would highly recommend to anyone who is involved in the process of developing or managing the development of a web-based technology solution. This is a great book. It is not too technical but it provides a good set of guidelines for getting started.The Book is “Web Style Guide” by Patrick Lynch and Sarah Horton. The Second Edition is ISBN 0300088981

The book is free online at www.webstyleguide.com

Slide 2

A Great Book

Page 3: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

An Experiment:

Let’s say you are tasked with building an E-Commerce web site. Let’s work together as a team to brainstorm on how to proceed.

What you know is that your company wants you to build a web site to sell high-end children’s swing sets.

Slide 3

Let’s try Something

Page 4: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

Given an assignment such as this, what questions would you ask before you get started with the project?

Slide 4

The First Questions to Ask?

Page 5: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

1) Identify ALL the requirements for the site

1) Including a complete understanding of how the store needs to function, what limits and restrictions there are, etc.

2) Use Cases …

2) Identify the budget and resources available for the project

3) Identify the Schedule Requirements

4) Identify Internal and External Dependencies such as

1) Communication with External Networks and Databases

2) External Customer Interactions and Communications

3) Sign-Off Teams Slide 5

Questions

Page 6: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

Slide 6

How to get Started • Review and Sign off on the Requirements Documents• Establish a set of Processes for handling

– Project Plan/Schedule Signoff– Spec Doc reviews and Signoff– Reporting, Prioritizing and assigning Issues and Bugs to be fixed– Communication and reporting to team members (email groups)– Tools to use for Source Control and Bug Tracking and Schedule Tracking.– Document Standards– Coding Standards

Page 7: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

• Assemble the team for a Kick-Off- Don’t forget QA, IT, Marketing, Release Management

Folks- Establish Roles and Responsibilities- Schedule regular team meetings to review

- Task lists, Schedule, Issues that need to be resolved,

etc. • Put together a Schedule of tasks including:

- Time to write specs, test plans, test cases- Dev, QA, Release Management, Marketing, Training

Tasks- Usability Studies, Beta Testing, Site Update Process- Milestones

- Give team members their first assignments Slide 7

… and

Page 8: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

Given a typical web site, what are the major categories of tasks you would establish?Based on those, what are some of the more specific tasks you would add?

Slide 8

Project Plan Tasks

Page 9: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

Typically, a Web Development team is comprised of:• Someone from Marketing or Product Management Driving the Requirements• A Project Manager managing the daily tasks and tracking the schedules• Developers (Architect, Software and Database)• Designer• Release Managers (building and posting updates to Dev, QA, Stage, Production Servers)• IT Engineers to assist with network-related requirements

What are some other Team Members you would expect?Depending on Budget, this team may be 1 person or 100.

Slide 9

Typical Team

Page 10: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

Now that you are ready to get started, what are some of the first tasks that must be completed early in the process?• Infrastructure Requirements (Hardware, Software, Security, Network, etc.)• Technology Decisions (OS, Web Server SW, Programming Languages used for Client and Server-Side development, Database Selection, Firewalls, Load Balancing, Web Hosting)• Based on the Product Requirements (User Types, Browsers to support, Internet Connection Speed Requirements, Languages to support, Countries to support, etc.) You may have to plan ahead for broader requirements in the future.• Support, Training and Maintenance – Identify what resources will be responsible for ongoing support and maintenance of the site. Slide 10

First Decisions to Make

Page 11: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

• One of the first projects should be to establish a site map to make sure you cover all topics and paths to meet the site requirements.• Make sure you have logical and complete coverage of content and functionality.• What is a site map and who uses it?

Slide 11

Site Map

Page 12: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

I like to start a site map by selecting from a standard set of web pages and expanding on them as needed. There are a couple of categories of these pagesUser Pages – pages the normal customers of the site use and seeSite Administration Pages – Pages that site administrators use to manage the web siteHosting Administration Pages – Usually provided by the Web Hosting Company – Setup Email, etc.

For a more comprehensive list of Typical Web Site Page Options, See Handout.

Slide 12

Getting Started with your Site Map

Page 13: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

• Try to keep the hierarchy of your site relatively horizontal• You should not have more than 7-10 primary categories of pages on your site menu. • You should be able to reach almost any page on the site with a few mouse clicks. If you take the time to categorize properly, you can achieve this.• Consider easy ways to traverse the site map tree to reach related topics

Slide 13

More on the Site Map

Page 14: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

Start by reviewing and understanding the Requirements and Site Map documents. The site should be designed…• for usability, functionality, visibility, use of colors, shapes, graphics, load speed, traffic requirements, etc.• for the appropriate user level• to maximize the utilization of search engines• so it is something that developers can actually develop• so QA can test with automated testing tools• so bookmarking pages on the site works as expected• to work well with the colors and fonts of the company or product logo

Slide 14

Design your Site

Page 15: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

Keep in mind that…You want to be able to update the content easily without disrupting serviceYou may have to localize your web site to other countries/languagesYou want a cool looking site that is not boringIt is easier if you establish a standard page layout for all pages to follow

Slide 15

Design your Site (2)

Page 16: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

Also, remember…To utilize some common standard elements on each page (Links to Home Page on all Primary Pages, Email Webmaster, Links to site map, privacy policy, licensing info, Help, etc.)Be considerate of Low Vision Users – Contrast and Colors can make a big difference.!!! Very Important! Make sure is it obvious to the user how they can contact you to purchase your products or ask questions about them.

Slide 16

Design your Site (3)

Page 17: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

Have someone review your design for…- Look and Feel- Usability- Functionality- Complimentary Colors and ThemesAnd update as you see fit.Then get signoff from the Team, Marketing or the customer.

Slide 17

Design Review

Page 18: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

• All development tasks should be documented with specification documents. By analyzing the Requirements your team should be able to assemble a comprehensive set of specification documents.

• What items do you feel should be included in this document?

• When is a Spec complete?

• Don’t forget to have a signoff.Slide 18

Specifications

Page 19: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

•Database Schema including tables, indexes, default settings, etc.•Database coding (Stored procedures, interfaces)• Front-End Web Page Development• Back-End Scripting and Coding• Server-Side Applications, DLL’s, etc.

Slide 19

Development

Page 20: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

• Interface with Shopping Cart Software•Getting an SSL Certificate•Credit Card Processing Services•Shipping Carriers and Rates• Inventory Database•Order Processing Systems (or is this your OPS?)

Slide 20

External Entities

Page 21: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

What is unit testing?

Give some examples of how unit testing is performed.

Slide 21

Unit Testing

Page 22: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

What is Integration Testing?

Who is responsible for this?

Slide 22

Integration Testing

Page 23: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

Server Side•Server Operating System (Linux, Unix, Windows, Mac, and many others)•Web Server Software (Apache, Netscape, IIS, SunONE, etc.)•Database Engines (Oracle, MySQL, Microsoft SQL Server, etc.)•Server-Side Scripting (JSP, ASP, PHP, Perl, CGI, Python, Cold Fusion, etc.) using languages (JavaScript, Java, VBScript, etc.)•Programming Languages for Server-Side Applications, Applets, Servlets such as Java, C++, C#, VB.Net and many more.•Client-Side (Browser) Scripting Languages (JavaScript, VBScript)•Client-Side (In the Browser) Helper Applications (Java Applets, ActiveX Controls)

Slide 23

Technology Decisions

Page 24: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

• Firewall• Load Balancing• Failover/Mirroring• Virus Scanning• Servers (number, types, power, speed, etc.)• Dev/QA/Stage/Production hardware

Slide 24

Hosting Decisions

Page 25: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

QA should develop a test plan and a set of test cases that proves that the site requirements and use case requirements are met. Test the site and evaluate it for Core FunctionalitySpelling, Grammar, Look and FeelUsability and FunctionalityBroken images and linksReview the Code for

Accurate documentation, Matching/Closing Tags, Syntax Errors.

What Else...?

Slide 25

Testing

Page 26: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

• Install all database, application, web page updates.•Test on the production web site to make sure there are no environment variables that effect functionality.•How to handle updates.

Slide 26

Release

Page 27: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

Let’s briefly discuss some situations that may occur as the teams interact with each other.- Lack of Requirements- Coders don’t want to document- QA is left out- Management wants screen shots right away- Scope Creep - Schedule Changes

Slide 27

Inter and Intra-Team Dynamics

Page 28: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

Maintaining the web site.• Make sure the site is up• Make sure the customers are not experiencing problems (review error pages)• Check for performance issues• Check security, virus, hacking situations

Updating the siteContent, Products, Bug fixes, etc.

Slide 28

Maintenance and Updates

Page 29: 1 Developing a Website Boston University – MET TM448 – Spring 2013 Marcus Goncalves

Slide 29

Questions?