Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Boston-Folio Implementation Document - Project | COMP 566, Study Guides, Projects, Research of Software Engineering

Material Type: Project; Class: SOFTWARE DESIGN & DEVELOPMENT; Subject: Computer Science; University: Wentworth Institute of Technology; Term: Unknown 1989;

Typology: Study Guides, Projects, Research

Pre 2010

Uploaded on 08/16/2009

koofers-user-2vi
koofers-user-2vi 🇺🇸

10 documents

1 / 21

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
1
Boston
BostonBoston
Boston-
--
-folio
foliofolio
folio
Implementation Document
Implementation DocumentImplementation Document
Implementation Document
Phillip Berenz
Carlos De Jesus
Greg Snow
Ben Rabidou
Sam Giroux
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15

Partial preview of the text

Download Boston-Folio Implementation Document - Project | COMP 566 and more Study Guides, Projects, Research Software Engineering in PDF only on Docsity!

BostonBoston- BostonBoston--folio-foliofoliofolio

Implementation DocumentImplementation DocumentImplementation DocumentImplementation Document

Phillip Berenz Carlos De Jesus Greg Snow Ben Rabidou Sam Giroux

TABLE OF CONTENTS

  • BOSTON-FOLIO
  • IMPLEMENTATION DOCUMENT
  • 1.0 INTRODUCTION
    • 1.1 PURPOSE OF SYSTEM
    • 1.2 SCOPE OF THE SYSTEM
    • 1.3 IMPLEMENTATION GOALS
    • 1.4 DEFINITIONS, ACRONYMS, AND ABBREVIATIONS
    • 1.5 REFERENCES
  • 2.0 UML COMPONENT MODEL
    • 2.1 SUBSYSTEM DECOMPOSITION
  • 3.0 UML DEPLOYMENT MODEL
    • 3.1 HARDWARE/SOFTWARE MAPPING.........................................................................................................
  • 3.0 SYSTEM MANUAL
    • 3.1 OVERVIEW
    • 3.2 PERSISTENT DATA MANAGEMENT
    • 3.3 ACCESS CONTROL AND SECURITY
    • 3.4 GLOBAL SOFTWARE CONTROL
    • 3.5 BOUNDARY CONDITIONS.......................................................................................................................
  • 4.0 DETAILED PLANNING FOR EACH COMPONENT .....................................................................
    • 4.1 USER INTERFACE DESIGN .....................................................................................................................
  • 5.0 WORKING PROGRAM ......................................................................................................................
    • 5.1 SOURCE CODE ......................................................................................................................................
  • 6.0 TEST PLAN ...........................................................................................................................................
    • 6.1 INTRODUCTION ....................................................................................................................................
    • 6.2 UNIT TESTING......................................................................................................................................
    • 6.3 INTEGRATION TESTING ........................................................................................................................
    • 6.4 ACCEPTANCE TESTING ........................................................................................................................
    • 6.5 DEBUGGING PLAN ................................................................................................................................
    • 6.6 RETESTING ..........................................................................................................................................
    • 6.7 PRODUCT RELEASE ..............................................................................................................................
  • 7.0 CHANGEOVER PLAN ........................................................................................................................
  • 8.0 USER MANUAL ...................................................................................................................................
  • 9.0 REVISED PROJECT SCHEDULING AND COST ...........................................................................
    • 9.1 DEVELOPMENT PLAN ...........................................................................................................................
    • 9.2 COSTS, BENEFITS, & SCHEDULING .......................................................................................................
    • ESTIMATED COSTS ....................................................................................................................................
    • TANGIBLE ..................................................................................................................................................

The main goals of our system are user-friendliness, well-defined interfaces, ease of learning, and high performance. It should take less than one hour of training for an artist to create their profile and gallery. It should take less than one hour of training for a buyer to search and use the mock environment sub-system. These goals should be achieved by the help of good documentation on the system, task wizards that minimize user error, and screen casts which will visually demonstrate how to use our system.

Another goal for this system is to have a quick response time. Any queries to the system should return results in less than two seconds, ninety percent of the time. Personal profiles and galleries should load in fewer than two seconds, ninety percent of the time. To achieve high-performance our database will be fine-tuned to be highly efficient.

Portability is a key design goal because the system will be designed using a client/server architecture. The system will need to be compatible with every client’s browser. Scalability is also another important design goal because the system will be able to handle a large number of clients. Lastly transparency is another design goal because if the application is located on one server, or distributed between three servers, to the client it will look all the same.

Due to the time constraints on this project, we chose to focus on goals that are more beneficial to the end-users such as user-friendliness, ease of learning, and high performance. Since we are focusing on goals that are more beneficial to the end-users, many of the goals that are beneficial to the developers/maintainer will be sacrificed such as reusability, adaptability, and modifiability.

1.4 Definitions, acronyms, and abbreviations

ASP.NET - NET is Microsoft's new programming technology which is now gaining acceptance and momentum. Soon, it will completely replace standard ASP. Glaserweb.com is already up to speed with .NET technology, and is fully ready for this switch. While .NET development is not as rapid (leading to higher production costs), it is significantly more stable, and runs much faster than older programming technologies, opening up new possibilities for web development.^1

AJAX - AJAX or Asynchronous JavaScript and XML is a term describing a web development technique for creating interactive web applications using a combination of: * HTML (or XHTML) and Cascading Style Sheets for presenting information* Document Object Model, JavaScript to dynamically display and interact with the information presented* XML, XSLT and the XMLHttpRequest object to interchange and manipulate data asynchronously with the web server (although AJAX applications can use other technologies ...^2

(^1) Definition from www.glaserweb.com/glossary.php (^2) Definition from en.wikipedia.org/wiki/AJAX

Client Side Scripting - generally refers to the class of computer programs on the web that are executed client-side , by the user's web browser, instead of server-side (on the web server).^3

Server Side Scripting – Is a web server technology in which a user's request is fulfilled by running a script directly on the web server to generate dynamic HTML pages. It is usually used to provide interactive web sites that interface to databases or other data stores.^4

1.5 References

The code of the system will be completely validated using W3 standards. The system will be programmed using a mix of web-based languages such as ASP. NET, HTML, and AJAX.

2.0 UML component model

2.1 Subsystem decomposition

The system will be broken into four parts; client side scripting, server side scripting, web services, database engine. Client side scripting will use Microsoft’s AJAX Toolkit this will save a lot of time and money as we will not have to write any JavaScript. The client side scripting will allow us to create visually aesthetic web pages. The server side scripting will use ASP.NET with C# which will do the web page rendering. ASP will make requests to web services which will do the database calls and render the data in the proper format so ASP can easily utilize the data. The database backend will be Microsoft SQL Express, this is the free version of SQL and can handle databases up to 4GB of data, should the 4GB maximum be reached a version of SQL Server can be purchased with no size constraint.

(^3) Definition from http://en.wikipedia.org/wiki/Client-side_scripting

(^4) Definition from http://en.wikipedia.org/wiki/Server-side_scripting

U s e r M a n a g e m e n t

G a lle ry M a n a g e m e n t

S ite M a n a g e m e n t P ic tu re M a n a g m e n t

U s e r D ire c to ry

A d v e rtis m e n t U s e r In te rfa c e (^) R e q u e s t M a n a g e m e n t

S e a rc h

3.0 System Manual

3.1 Overview3.1 Overview3.1 Overview3.1 Overview

The system will use web pages to interface with the user. The page will be hosted on a Windows Server which will allow us to utilize the power of a server side scripting language like ASP.NET using C#. The middle tier will use ASP.NET Web Services; this will allow us to separate the SQL code from the ASP.NET pages. The web services will not serve users only the ASP.NET as a data gathering tool. Web services will contain the SQL code and talk to a SQL back end, Microsoft SQL will be used as the database engine.

3.2 Persistent data management

All information with the exception images will be stored in SQL server. This will allow us to access all data through web services quickly and efficiently. For image storage the files will be stored in a public web folder and the file name will be stored in SQL server. When a request is made to look at an image the record will be looked up in the database and grab the filename, then return the location of the file name and asp will use that to load the image. This allows for greater portability, should we ever want to change database engines this will allow us to simply move text fields and not have to deal with image conversion from one database to another.

3.3 Access control and security

There are four levels or users; General User, Buyer, Artist, and Administrator. Each user has a greater level of control than the last. A General User has an anonymous security level this will allow them to do things like register, search the site and view galleries. A buyer has a little more power as they have become a registered user and require a login to gain access. A buy can contact a seller and do everything a registered user can. An artist has all the abilities of a buyer but can also publish works for users to view. An administrator is a pre-set user for the site, a general user cannot register as an administrator another administrator only has the power to create upgrade a user to administrator rights. To keep the users registration information and login information protected the system will use 128bit SSL encryption over the internet. Information in the SQL database will be stored in plain text with the exception of the user’s password. This will be encrypted again so that even an administrator cannot view the user’s password.

Client ASP.NET Web Services Database

Request Web Page Request Login Auth SQL Query Return Query Return Login (T/F)

QuickTime™ and a

TIFF (LZW) decompressor

are needed to see this picture.

error page which, again, resembles the current theme of our site. This replaces the default ASP error pages. These pages will also notify the webmaster that the site has generated an error via email and will contain details about the error itself.

4.0 Detailed planning for each component

4.1 User interface design

QuickTime™ and a TIFF (LZW) decompressor are needed to see this picture.

password a failure.

Register Client machine

Name, address, user-level, username, password

A valid user is created and user is sent to site creation page

Update Registration Info

Client machine

Editing test inputs from register

System message stating information was updated or not

Reset Password

Client machine

None That user password reset was successful or not

Request Artist Info

Client machine

Confirmatio n that users contact information is valid

That user has successfully sent notice of request

Preview Picture in Room

Client machine

Background image, desired painting from database

Two displayed pictures, where you can drag and drop the painting on to the background images

View Gallery Client machine

Request to view gallery

Gallery display

Search Client machine

Search by user, painting size, medium, color, genre

Query results matching search criteria

Browse Client machine

None None - -

View Profile Client machine

Request to view profile

Profile display

Delete Account

Client machine

Request to delete

A message stating

account account was deleted successfully Create Gallery

Client machine

Upload picture file, picture name, picture price, picture description

Message stating creation was successful or not

Create Artist Page

Client machine

Upload artist picture, artist biography, artist information

Message stating creation was successful or not

Edit Site Client machine

Edit inputs from create artist page

Message stating creation was successful or not

Edit Gallery Client machine

Edit inputs from create gallery

Message stating creation was successful or not

Preview Gallery

Client machine

Request to preview gallery

Message stating request was successful or not

View Users Client machine

Request to view users

Query results displayed

Delete Users Client machine

Request to delete users

Message stating deletion was successful or not

Search Users Client machine

Search users by username

Query results of search criteria displayed

company. If we find that our users need more functionality or are using the software functionality in a way not intended, we will make major update releases to the site. These major updates will be less frequent.

7.0 Changeover Plan

Boston folio is brand new system and doesn’t require any sort of integration with a legacy system.

7.1 Installation on the Client's Hardware

Boston folio is hosted on the web and does not need to be installed on client hardware, clients will access the website using a standard web browser.

7.2 Individual and Communication Testing

The system will be tested for compatibility with the two most popular browsers Internet explorer and mozilla firefox. Extensive testing will be done with the database backend and client front end to improve performance. Clients using different OS’s should not cause problems as long as a compatible browser is used.

7.3 Training and Technical Staff

Very little training will be needed for clients and as for the technical staff a manual has been created. A full-time staff is not needed because the hosting site supports the servers. Some occasional maintenance will be needed on the database, but only to prevent corruption of data.

7.4 Conducting Acceptance Tests and Documentation Reviews

7.4.1 Conducting Acceptance Tests

Boston folio will go through extensive testing; the testing will execute by the programmers. The goal of the acceptance testing is to record (requirements to be tested, testing environment, test inputs, expected outputs, test date and observed outputs).

7.4.2 Documentation Reviews

All the project documentation will be reviewed for grammatical errors, improve ease use, and make any extra changes.

7.5 Converting Files to the New System

No files will need to be converted because this system is being built from the ground up. Any new updates made in the future will need to be compatible with the new system to make integration seamless.

7.6 Modifying Any Procedures Affected by the System

When a buyer finds an artist that he is interested in buying art from he can now contact him through Boston folio. The system also makes finding local artist very easy. Instead of going to local art shows and galleries, they can simply use our system find and artist and request contact information.

7.7 Obtaining management sign-off

Obtaining management sign-offs is not applicable to this system

7.8 Changing From the Old System and Procedures

This system is not replacing any other system, but in other similar systems, communities are much larger. By having a specific community the system will better meet the need of its clients/users.

7.9 Arranging for Maintenance

The web server hosting company will handle all of the maintenance for the server. When selecting host research was done to ensure a reliable company. They are in charge of checking equipment and keeping their servers up at all times.

7.10 File Backup and System Recovery

There should be an extensive back-up scheme in place that should Involve a complete back up of the system, and running of a mirror site for recovery purposes. System should be up at all times. Downtime is unacceptable by clients and we must do anything possible keep the system running 100% of the time.

3/14/07-3/19/07 16 HR

COST 13/HR

5 PEOPLE

INTERNAL TESTING

3/19/07-3/22/07 19 HR

COST 10/HR

5 PEOPLE

FEEDBACK MEETINGS

3/23/07-4/07/07 20HR

COST 15/HR

5 PEOPLE

BETA TEST

3/22/07-4/5/07 2 WEEKS

COST 0/HR

X PEOPLE

PROBLEM SOLVING AND TWEAKING

4/5/07-4/8/07 14 HR

COST 14/HR

5 PEOPLE

PREPARATIONS FOR FINAL PROJECT AND SITE OPENING

4/9/07-4/10/07 6HR

COST 10/HR

5 PEOPLE

SITE OFFICIAL OPENS 4/11/

9.2 Costs, benefits, & scheduling

Estimated Costs

Cost of building the site is between $9,032 dollars plus an additional $150 a month in hosting and maybe another $100 miscellaneous. These estimated is computed from section 4.5 the schedule. The hours and resources are broken down for each task and given a dollar amount.

Tangible

A tangible benefit of the website will be basic membership which will be free but limited; users will be able to pay a monthly fee or donate $5 and become a VIP ARTIST; which would remove limits by letting them have more pictures and galleries. There will also be ad revenue on the site. We plan to implement CPC (cost per click), unlike CPM (cost per impressions) because ads pay more but require users to click instead of just view, we feel having ads that are relevant to an artist’s interest and art in general. They pay around 10-30 cents a click these ads require unique users and since we are building a private social site this seem like the perfect fit and would allow us to supply excellent service and little or no cost to the users.

Intangible

The website will be very easy to use but also very functional. Good customer service would also help it can gain name recognition like Face book, and Myspace. In a small team there is less chances of disagreement and it will be easier to implement future update, which is a problem that the bigger sites deal with. With the low cost of development and the potential to make a big profit, our site will provide a great service to the end-users by always changing to their needs.

Payback Period

If we were to have 50 VIP members we would be making 250 dollars a month would cover the maintenance and hosting cost. Any money made from ads or from the increase in VIP users would go towards profits and towards the cost of making the site. If the site had a thousand users the payback period would be only two months, but even having a quarter of that would make the site a big success. Our plans for covering the cost also include ad revenue. We envision the site making a couple hundred dollars from adds a month at first, but as the sites popularity grows so will ad revenue. This project has a lot of profit potential which could be re-invested to improve the end-user experience.