A. Project Objective

This project will develop new business process and supporting an online web-based system to support the considered version for the company's products and customer services. It is anticipated that the resulting system will provide for highly integrated processes and services that cross many internal business functions and reach out directly to customers. It is anticipated that this project will result in one of the following

  1. Develop an ecommerce website that results in significant competitive advantages for the company in a highly competitive market
  2. Establish a partnership with an It vendor that involves developing a solution, installing that solution and customizing that solution to create competitive advantages. It is recognized that this solution may require business processes to be redesigned to fit the solution. This alternative supposes that modifications to the package will be done in cooperation with the vendor and in such a way as to permit the vendor to fold these enhancements into their product; however, sale of that product to any competitor would have to be contractually restricted for a reasonable period of time

B. Initial scope of the Project

This cross-functional project will support or impact the following business functions and external parties:

  • Marketing
  • Sales & Order Entry
  • Inventory Control and Procurement
  • Shipping and Receiving
  • Accounts Receivable and Payable
  • External parties
  • Customers
  • Suppliers
  • Merchandisers

It is recognized that project scope may need to be redefined over the course of the project. Project scope should be defined as explicitly as possible in the first phase of the project. Any significant deviation of functionality, cost or timetable must be reported promptly to the appropriate director.

C. Technology Constraints

The new system must conform to the following information technology architectural standards:

  1. The current LAN architecture is client/server based on Windows client running on the Ethernet and TCP/IP network using Windows 2003 and Windows 2003 Terminal Server Services.
  2. The current messaging architecture is based on Outlook clients (for e-calendar and e-mail) running on a Microsoft windows 2003-based exchange server.
  3. This project will require the development of an enterprise database. The corporate database server standard is MySQL Server running on a Windows 2003 server.
  4. The corporate application development environment chosen from PHP or Java
  5. Internet and internet web servers will be implemented using Microsoft Internet Information Server (IIS) running on a windows 2003 server.
  6. Internally, all client workstations will run the any version of Microsoft Windows desktop operating system including the Internet Explorer web browser.
  7. Externally, for customers, any solution developed must run equally well on either Microsoft Internet Explorer or AOL Navigator or any other web browser running on windows, Macintosh or Linux clients

D. Project Estimation

Software project estimation is a form of problem solving, and in most cases, the problem to be solved (i.e., developing a cost and effort estimate for a software project) is too complex to be considered in one piece. For this reason, we decompose the problem, re-characterizing it as a set of smaller (and hopefully, more manageable) problems. By decomposing a project into major functions and related software engineering activities, cost and effort estimation can be performed in a stepwise fashion.

The accuracy of a software project estimate is being predicated on following things:

  1. The size of the product to be built
  2. Translating the size estimate into human effort, calendar time, and money (a function of the availability of reliable software metrics from past projects)
  3. The project plan reflecting the abilities of the software team
  4. The stability of product requirements and the environment that supports the software engineering effort

To correctly estimate the effort, size, or cost of completing a project, it is important to be aware of the multiple tasks that comprise a project. Thus, dividing the project into logical units or tasks by using the WBS (Work Breakdown Structure) technique at its very basic level

0.0 Retail Web Site

1.0 Project Management

2.0 Requirements Gathering

3.0 Analysis & Design

4.0 Site Software Development

4.1 HTML Design and Creation

4.2 Backend Software

4.2.1 Database Implementation

4.2.2 Middleware Development

4.2.3 Security Subsystems

4.2.4 Catalog Engine

4.2.5 Transaction Processing

4.3 Graphics and Interface

4.4 Content Creation

5.0 Testing and Production

Using a WBS provides a number of benefits to the management and to the development teams.

  • First, it gives the management an idea about the size and complexity of the project.
  • Second, it helps in planning, scheduling, and monitoring a project realistically. This is possible because all the tasks in the project can be preformed measurable targets for each task.

The following figure shows the initial WBS as:

C.i. Calculating Cost/Effort, Time & Duration: Using COCOMO Model

Using this model, we will compute the software development effort as function of program size and a set of "cost drivers" that include subjective assessment of product, hardware, personnel and project attributes. Program size is expressed in estimated thousands of lines of code.

Project Size is estimated as follows:

HTML tags

1.0 KDSI

Logical Units

1.5 KDSI

Calculations

1.5 KDSI

Data entry

0.6 KDSI

Data update

0.6 KDSI

Query

0.8 KDSI

Report gen

1.0 KDSI

System SIZE (S)

7.0 KDSI

Project Details are rated as:

Characteristics

Level

EAF

Storage

High

1.08

Complexity

Nominal

1.00

Experience

High

0.91

Programmer

High

0.95

Capabilities

Low

1.24

Effort (Cost) Estimation:

Organic:

K = (EAF)*3.2 x S 1.05 [man-months]

K = (1.08*1.00*0.91*0.95*1.24)*3.2 x (7)1.05

K = 1.16*3.2*7.72=28.65 >28 [man-months]

Where S= Size

Time (Schedule) Estimation: Time formulas

Organic:

t = 2.5 x K 0.38 [months]

t = 2.5 x (28.65) 0.38

t = 2.5 x 3.58 = 8.95 >8 [months]

Where K= Effort

People Required:

Organic:

= Effort (K) / Time (t) [count]

= 28.65 / 8.95

= 3.20 >3 Persons are required

D. Project Organization & Resource Cost Rates

The following table shows the persons involved in the project along with the roles assigned to them basing on the WBS mentioned above:

#

Professional (Count)

Tasks

Roles

1

Project Manager (1)

1.0 Project Management

2.0 Requirement Gathering

Project Management

Requirement Engineering

2

System Analyst (1)

3.0 Design & Analysis

5.0 Testing & Production

System Designing

System Testing

3

Web / Graphics Designer (1)

4.1 HTML Design & Creation

4.3 Graphics & Interfaces

4.4 Content Creation

Web / Graphic Designing

4

Programmer (1)

4.2.1 Database Implementation

4.2.2 Security Subsystems

4.2.3 Catalog Engine

4.2.4 Transaction Processing

Database Designing

Application Programming

Table 1: Organizing Human Resources

As shown in the table, it is observed that we require one System Analyst, one Web/Graphic Designer and one programmer in order to implement the project. The following table shows the information regarding the costs associated with these recruitments:

Recruit

$/Week

Duration (Weeks)

$/Project Life

Project Manager

$250

60

$15000

System Analyst

$150

20

$3000

Web/Graphic Designer

$100

12

$1200

Programmer

$100

36

$3600

Initial Est. Cost

$22800

Table 2: Estimating Cost for Professionals

E. Project Tasks

Now, we are going to define all the tasks involved in the development of the project. Initial WBS gives us some idea of what are the basic tasks which should be involved. And now basing on that, we are now going to define more comprehensive tasks. These tasks will be our guidelines and will also become part of our project plan.

1.0 Project Management

1.1 Planning

1.2 Cost & Schedule Estimation

1.3 Task & HR Management

1.4 Risk Management

1.5 Quality Management

1.6 Prepare Project Plan

1.7 Update Project Plan

2.0 Requirements Gathering

2.1 Business Requirement Definition

2.2 System Requirement Definition

2.3Create FS document

3.0 Analysis & Design

3.1 Develop Enterprise Architecture

3.2 Prepare Data Flow Model

3.3 Prepare Logical Data Model

3.4 Prepare Physical Data Model

3.5 Prepare Design Specification

4.0 Site Software Development

4.1 HTML Design and Creation

4.2 Backend Software

4.2.1 Database Implementation

4.2.2 Security Subsystems

4.2.3 Catalog Engine

4.2.4 Transaction Processing

4.3 Graphics and Interface

4.4 Content Creation

5.0 Hardware Development

5.1 Hardware Requirement Planning

5.2 Hardware System Definition

5.3 Hardware Component Selection

5.4 Hardware Testing

6.0 System Testing

6.1 Module & Subsystem Testing

6.2 System Integration Testing

7.0 Installation & Support Services

7.1 Installation Planning

7.2 User Support Documentation

7.3 User Training

7.4 Configuration Management

7.5 DB Management

7.6 DB Backup Plan

7.7 Source Management

7.8 Source Backup Plan

The tasks defined above now should enable us to draw high quality WBS. As will the picture depicts that the chart includes logical flow and is hierarchical in nature. It is Clear and concise & provides ability to roll-up information to higher levels. It is deliverable oriented and captures all deliverables (Internal, External, Interim) in terms of work to be completed. We have also included some more contracted tasks like Hardware development & support services thus fulfilling not only software development tasks but also hardware definition, management and requirement tasks too. Working on Divide & Conquer technique we are now able to recognize all the important tasks involved in Development, Management, Support and Administrative areas.

E.i. Defining Deliverables/Milestones

We are now going to define a hierarchy where the project is decomposed into product-oriented components when defining project scope. It will help us in defining and describing project deliverable products and product constituent components in more concise and efficient manner. Following fig. shows the PBS in pictorial form as:

Defining PBS will help us in understanding on what the project tasks are going to deliver to us. It will also helps in managing the deliverable status/matrix report. Such matrix or report will help in keeping check on the project activities to be running smoothly or not. Are we going on track or there are delays happening in the project.

The process-oriented tasks and the deliverables resulted from them are as shown in the table:

#

Process

Deliverable

1

Cost & Schedule Estimation

Project Estimation Document

2

Prepare project plan

Project Plan

3

Create FSD

Function Specification Document (FSD)

4

Prepare design specification

Design Specification Document

5

HTML design & creation

WebPages

6

Graphics & Interfaces

Rich Graphics WebPages

7

Content Creation

Textual WebPages

8

Database implementation

Database

9

Security Subsystems

Application Module I (SourceCode)

10

Catalogue Engine

Application Module II (SourceCode)

11

Transaction Processing

Application Module III (SourceCode)

12

Hardware component selection

Web/DB Servers

13

Hardware testing

Hardware Test Report

14

System integration testing

Testing Document

15

User support documentation

User Support Documentation

16

User training

Training Manual Documentation

17

DB backup plan

DB Backup Guidelines

18

Source backup plan

Software Backup Guidelines

Table 3: Defining Deliverables from WBS

F. Project Scheduling

At this point of time, now we need to assign / understand durations to all activities and monitor their progress. We also need to plan the order in which the activities will be performed as well as the start and end dates for each activity. The plan should include not only the scheduling of development activities, but also the scheduling of project resources, particularly people.

It is the project manager's responsibility to withstand pressure and to assure that the project is developed in an orderly fashion, according to the schedule. Whenever circumstances change, the project schedule should then be updated to reflect the new situation.

The following table shows the project activities defined in early part of the document and the time allocation for each task to be planned for completion using the Gantt chart format:

The scheduling of project team is shown in the following table:

#

Team Members

Time Allocation

(weeks)

Schedule

1

Project Manager

61

4/1 - 11/29

3

System Analyst

17

5/10 - 5/31 & 10/14 - 11/29

4

Web/Graphic Designer

10

6/21 - 7/30

5

Programmer

34

6/1 - 10/13

Table 4: HR Scheduling

The milestones/deliverables status report is as follows:

#

Deliverable

ETD

1

Project Plan

4/15/2010

2

Function Specification Document (FSD)

5/7/2010

3

Design Specification Document

5/31/2010

4

WebPages

7/30/2010

5

Rich Graphics WebPages

6/22/2010

6

Textual WebPages

7/7/2010

7

Database

7/30/2010

8

Application Module I (SourceCode)

9/14/2010

9

Application Module II (SourceCode)

8/23/2010

10

Application Module III (SourceCode)

10/13/2010

11

Web/DB Servers

10/21/2010

12

Hardware Test Report

10/21/2010

13

Testing Document

11/8/2010

14

User Support Documentation

11/15/2010

15

Training Manual Documentation

11/29/2010

16

DB Backup Guidelines

11/25/2010

17

Software Backup Guidelines

11/25/2010

Table 5: Defining Milestones

F.i. Network Scheduling

In a software project, there are various activities that happen either simultaneously or overlap. Using a Gantt chart, we cannot distinguish between the activities that occur simultaneously from those that share some dependency. To able to analyze the dependencies that exist between the activities, the network scheduling techniques are used. By using these techniques, we will determine the latest time by when an activity should start to be completed on time.

A network is the graphic representation of the activities in a project. It depicts all the activities in the project in the form of nodes. The arrows terminating at a node need to be completed before the following activity can begin. Sometimes, we need to introduce a dummy activity to enable the network to display parallel activities.

The table showing the activities involve in the project sorted in ascending order according to start date:

Node#

Task

Time Allocation

Start Date

End Date

1

Project Management

11 days

04/01/10

04/15/10

2

Requirements Gathering

16 days

04/16/10

05/07/10

3

Analysis & Design

16 days

05/10/10

05/31/10

4

Database Implementation

44 days

06/01/10

07/30/10

5

Graphics and Interface

16 days

06/01/10

06/22/10

6

HTML Design and Creation

28 days

06/23/10

07/30/10

7

Content Creation

11 days

06/23/10

07/07/10

8

Catalog Engine

16 days

08/02/10

08/23/10

9

Security Subsystems

16 days

08/24/10

09/14/10

10

Transaction Processing

21 days

09/15/10

10/13/10

11

Hardware Development

6 days

10/14/10

10/21/10

12

Installation Planning

2 days

10/21/10

10/22/10

13

System Testing

11 days

10/25/10

11/08/10

14

User Support Program

16 days

11/08/10

11/29/10

Table 6: Tasks Sorted for Network Scheduling

The drawn Network Schedule is as shown below:

Determining Criminal Path

The critical path is the longest path through a network. It consists of those activities that cannot be completed concurrent1y. In other words, the critical path represents the maximum duration for a project.

From above fig, due to dummy activities, we have only one longest path left.

The longest path is S-1-2-3-4-8-9-10-11-12-13-14-E = 175

The double line in the network schedule represents the critical path for that project.

Thus, all these activities on the critical path are critical for the project. If any activity on the critical path is delayed, the entire project is delayed by the same amount of time. Hence, we need to monitor the activities on the critical path because the project depends on the successful completion of these activities. If required, additional resources can be applied to these activities to shorten the project duration.

G. Risk Analysis & Management

Risk analysis and management are a series of steps that help a software team to understand and manage uncertainty. Many problems can plague a software project. A risk is a potential problem - it might happen, it might not. But regardless of the outcome, it's a really good idea to identify it, assess its probability of occurrence, estimate its impact, and establish a contingency plan.We need to prepare Risk Mitigation and Risk Management plan to overcome any future problems that may occur during the course of the project life. Following tables identifies some of the potentials risks for the project & the management policy:

#

Risk Identified

Probability

RMMM

1

Inexperienced staff

0.2

Management has decided to recruit experienced staff still training sessions will be held before the project initiation.

2

Performance risk due to high volume of data to be processed

0.5

It may happen that historical data needs to be updated in the software system be huge, so we need to develop a plan to manage it properly.

3

Cross-browser compatibility

0.2

It is a big requirement in the software solution & we will try to test the software on the popular and most frequently used browsers available on the internet. Still, we need to keep a track on latest technology and try to make the software as much compatible as possible.

4

Involvement of new technology

0.1

We are going for free open source technologies like Java & PHP, so this risk may be not so much a threat.

5

Design changes during development

0.6

This is very important to make our understanding about the software very clear during first 2 months of the software life, as it may happen that some changes may happen. We need to define the specifications properly during initial stages and make our understanding very clear on them.

Source: Essay UK - http://doghouse.net/free-essays/information-technology/supporting-an-online-web-based-system.php


Not what you're looking for?

Search:


About this resource

This Information Technology essay was submitted to us by a student in order to help you with your studies.


Rating:

Rating  
No ratings yet!


Word count:

This page has approximately words.


Share:


Cite:

If you use part of this page in your own work, you need to provide a citation, as follows:

Essay UK, Supporting an online web-based system. Available from: <http://doghouse.net/free-essays/information-technology/supporting-an-online-web-based-system.php> [22-02-19].


More information:

If you are the original author of this content and no longer wish to have it published on our website then please click on the link below to request removal:


Essay and dissertation help

badges