|
SYSTEMS DEVELOPMENT PROJECT
OVERVIEW A Sacramento-area client
has hired your project team to develop a web based Information System which will
automate one or more business functions. You will conduct all activities and prepare all
deliverable products associated with the development process. At the conclusion of
your study, you will prepare a comprehensive, high-quality project report
containing your results. You will also design and program a working prototype
model of your system using the programming language of your choice.
PROJECT INITIATION
Locate a company or agency that is interested in either automating a manually
based information system or enhancing its current computer-based system. You may
choose any type of organization (company or agency). If you choose a small
company, cover a fairly wide range of business functions. If you choose a
medium- to large-sized company, confine your scope to a more narrowly defined
business application (e.g., customer billing and collection). It is better to
have a deeper, more comprehensive analysis of a narrow-sized application scope.
Explain to your client that your project team is willing to help them define
their requirements and build a new system. They can use your study for either custom
development or software package selection. Your consulting services could easily
cost your client $20,000. You are willing to provide this service free in return
for the client's cooperation for the project.
Perform a quick feasibility analysis to ensure that the potential project is
viable and complete the SystemScope.doc. Here are
some things to consider:
- Your Use Case Diagram must have at least three meaningful processes
- Your project must result in deliverable software in one of
the following forms:
- Automated replacement of current manual system
- Substantial
reprogramming of an existing automated system
- New automated interface to be
placed on existing automated system
- Other (by prior approval)
- Your project must be web based (we will further discuss the architecture)
- DBMS is client specific
- I permit
students to work on a project for their employer under the following
assumptions:
- The entire group supports this project
- The client understands that
the entire team will be involved in the development process (interviews, e-mail,
prototyping, programming, etc) and the client cannot be involved in
assigning tasks for the group
- The student that works for the client, will not
be the primary contact with that client
- This project is not part of the student's
(who works for the client) regular work
ASSIGNMENT SUBMITTING STANDARDS
- All assignment documents should be ZIPPED and e-mailed
to me by 11:00 pm on the day they are due.
- Late assignments will be accepted but with a penalty.
There will not be re-grading of your deliverables.
|
|
PROJECT DELIVERABLES
1. TEAM COMPOSITION (TC) - 0 points
The MIS 161 teams will consist of 5-6 team members assigned one of the
following roles:
- Project Manager/Lead Systems Analyst
- Database Developer/Administrator
- Web Developer/Lead Programmer
- Web Developer/Programmer (possibly 2)
- Network Designer/Administrator/Integrator
You will form groups in class on the specified date. I will provide you
with the paper forms and you must complete the names of the group members, phone
numbers, class schedules, work schedules, and roles. You must also include the agreed
upon weekly team meeting times.
NOTE: Because you have a primary role, it does not mean that you will not be
involved in activities outside your primary role. You will be involved in all
project activities but you are expected to lead in the activities within your
primary role.
Other
- The Project Manager is the systems developer who initiates
the project
- In addition to the primary role, each developer must also
assume a supporting role
Deliverables
- The completed project team composition form.
- Each team member's resume
Grading
Note that this deliverable will not be graded.
2. PROJECT SCHEDULE (PS) - 15 points
From the description of the project deliverables described in this document,
create a project Gantt Chart to:
- Include all deliverables described in this document as summary activities.
- Beginning day for summary activities is the day after the previous
deliverable is due. Ending day for summary activities is the deliverable due
date.
- Include all tasks within each summary activity. Should, at least, include
all tasks that have deliverables.
- Examine the class schedule to assign tasks.
- For each task in the Gantt chart provide name of the developers responsible
(2 developers should be assigned the same task who will work together for
the completion of the task)
Deliverable
- E-mail me a softcopy of your file (no need to zip it).
Grading
3. DESIGN REVIEW (DR) - 30 points
Review the design of your system (from MIS 160) and make the necessary
changes.
- Requirements Document (includes project scope and the project's business
and system requirements)
- Use Case Diagrams
- Design Level Class Diagrams
- Database Design
- Systems Analyst Recommendations
Grading
| 3.1 |
Requirements Document |
15 |
| 3.2 |
Use Case Diagrams |
5 |
| 3.3 |
Design Class Diagrams |
5 |
| 3.4 |
Database Design |
5 |
| 3.5 |
Systems Analyst Recommendations |
0 |
Deliverable
E-mail me an single MS word document zipped with all the deliverables listed
above. Also, e-mail me a copy of your database (backup file, export file, or
other).
4. SYSTEM IMPLEMENTATION (SI) - 100 points
In this phase you will build, assemble, and integrate all software modules.
Deliverable
- Coding
- Source Code listing
- Project/solution files generated by your IDE
- System documentation
- Concise UML 2 Deployment or Component Diagram
- Description of development tools used (IDEs, editors, wizards, etc)
- Module Description - For each source code module (file/program/class)
include a narrative explanation of the purpose and functionality of this
module. Add this narrative explanation at the top of each module. When
self documenting a module is not appropriate, you may provide an
external narrative explanation. If you are using 3rd party components,
include a softcopy of the documentation of each 3rd party component.
- Method Description - For each method in your source code, provide a
narrative explanation of each method. When self documenting a method is
not appropriate, you may provide an external narrative explanation.
- Naming conventions and other applicable programming standards
- Database design (Entity Relationship Diagram)
- Change request (not graded). For each change made from your Design Review,
complete a separate system change
request.
Grading
| 4.1 |
Coding |
80 |
| 4.2 |
System documentation |
20 |
5. SYSTEM TESTING (ST) - 30 points
Software application testing is an umbrella term that covers several types of
tests. Our book discusses seven types of test. We will only focus on some of
those tests. In this phase you will develop test cases and test data for the
tests described below. You may use the following Excel file as a template for
creating your test plans: TestPlan.xls.
Deliverable
- Unit Testing - Test each object or component alone to discover potential
errors that exist in the code.
- System Testing - Test the combination of objects and component
integration that coexist and work with other objects and components in your
entire system.
- Usability Testing - Test to determine whether the system meets user
requirements. At minimum, you will test whether the system functions as
expected and whether the user interface make the system easy to use.
Grading
| 5.1 |
Unit Testing |
10 |
| 5.2 |
System Testing |
10 |
| 5.3 |
Usability Testing |
10 |
NOTE: For System and Usability Testing, you will test another team's project
and not your own. I will assign you a project for testing.
6. SYSTEM DEPLOYMENT (SD) - 35 points
In this phase you will make the new system operational.
Deliverable
- Software and hardware acquisition
- Package and installation of system components
- Installation - Installation description including the installation
date and deployment method used (i.e., direct, parallel, phased).
- Installation instructions - A document to show step by step how to
install your system.
- User Documentation - Written and other visual information describing who
the system works and how to use it in a form of a user's reference guide.
The purpose of a reference guide is to provide information on how users can
use the computer system to perform specific tasks. The information in a
user's guide typically is ordered by how often tasks are performed or any
other logical order. Note that most user documentation is often
delivered online in hypertext format.
- Conversion and initialization of data
- Updated Code (not graded)
- Source Code listing
- Project/solution files generated by your IDE
Grading
| 6.1 |
Software and hardware acquisition |
0 |
| 6.2 |
Package and installation of system components |
5 |
| 6.3 |
User Training Manual |
30 |
| 6.4 |
Conversion and initialization of data |
0 |
7. PROJECT CLOSEDOWN (PC) - 40 points
In this phase you will perform all activities in closing down your
project.
Deliverable
- Evaluate the system for the attainment of its goals. You should attempt to
answer the question "is our system on target?"
- Notify all people involved with the system
- Present your results to management - Prepare a 20 - 30 minute presentation
addressed to your client followed by a 10 minute Q&A. During the
presentation address the need for the system, the objectives of the system,
the designed solution, and demonstrate your finished product. Dress code is
"business attire".
- Conduct post-project interviews
- Evaluate project and members (see last section below)
Grading
| 7.1 |
Project Evaluation |
10 |
| 7.2 |
Notify all people involved with the system |
0 |
| 7.2 |
Present your results to management |
20 |
| 7.3 |
Conduct post-project interviews |
10 |
| 7.4 |
Evaluate project and members |
0 |
PEER EVALUATION
In the MIS workplace, you will be asked to evaluate your subordinates, your
peers, and even your managers. In this class you must complete the peer
evaluation forms provided below.
I will average the Percent Contribution over all forms submitted for each
team member. This average will be used to allocate project points for that team
member. For example, if the team members feel an individual contributed 80%
towards the team project (all deliverables), then that individual will receive
80% times the total team points awarded for the semester. If a team member fails
to evaluate one or more of his/her peers, it will be assumed that the
contribution was 100%.
ADVICE FOR A SUCCESSFUL PROJECT
- Try to obtain a client that has a manual process that your team may automate.
-
The proposed automated system should be designed for a PC rather than a
mainframe.
- The sooner you can complete the information-gathering phase of the
analysis, the more time you will have to devote to the design phases of the
project.
- Try not to spend an excess amount of time on the
diagrams.
- Realize that doing
everything, as a whole team is often slow and inefficient. Use whole-team
meetings primarily for brainstorming and coordinating sessions. Break the team
up into smaller units, and delegate specific tasks to each of these units. These
smaller units of one or two members are more efficient in completing the project
"milestones" than trying to do it as the whole team.
- One member should
be designated as "quality control" person. She/he should scrutinize
the specifications for completeness. She/he should also check
narrative pages using spell check and a grammar package (e.g., Grammartique).
|