8/3/2019 Software Engineering Doc Doc 4993
1/32
SOFTWARE ENGINEERING
LAB 11 (W13:5/Oct/)
Cover Case Study On
Software Project Management Plan
Automated Railway Reservation System
Page 59 87
Reference: [http://www.geocities.com/cs5391/]
DELIVERABLE FOR
PLANNING PHASE
OF SDLC
http://www.geocities.com/cs5391/http://www.geocities.com/cs5391/8/3/2019 Software Engineering Doc Doc 4993
2/32
PROJECT MANAGEMENT - PROJECT PLANNING CHECKLIST
Project Scope
1. Are there clearly defined business goals and objectives? Y/N2. Are the goals and objectives in the scope section of the plan document? Y/N3. Have assumptions been included? Y/N4. Have constraints been identified? Y/N
Deliverables
1. Is there a list of all the deliverables for the project? Y/N
Completion Criteria
1. Is the completion criteria clearly defined? Y/N
Acceptance Criteria1. Is the acceptance criteria clearly defined? Y/N
Project Schedule (WBS)
1. Is there a clear WBS? Y/N2. Is the project schedule structured into overview and sub-phases? Y/N3. Are dependencies identified in the plan? Y/N4. Are external dependencies linked to activities in the plan? Y/N5. Are public & resource holidays identified in the schedule? Y/N6. Is there a Gantt chart? Y/N7. Has work effort been estimated? Y/N8. Has task duration been estimated? Y/N9. Has skill level of resources been taken into account? Y/N10. Have the estimates been supplied by or validated by the resource assigned to it? Y/N11. Has PM effort been included in the plan? Y/N12. Have all activities been decomposed to an individual effort estimate i.e. no more than 5
days effort per activity. Y/N13. Has the Cost Estimates (Budget) been calculated from the WBS? Y/N
Milestones & Dates
1. Have key milestones & dates been identified in the plan? These are the key points atwhich they project will be reviewed for performance? Y/N
Resources
1. Resources Resource Requirements: are named resources assigned to activities,appropriate to their skills?
2. Y/N3. Is Resource Loading based on 5 days per week/ normal working hours? Y/N4. Have resource requirements, hardware/additional software costs been estimated? Y/N5. Has any necessary resource training been scheduled in to the project schedule? Y/N
8/3/2019 Software Engineering Doc Doc 4993
3/32
6. Are resources available to the project 100%? Y/N
Project Organisation:
1. Have Roles and responsibility been assigned? Y/N2. Have you produced an Organisational Chart for the project? Y/N
Plan Reviews:
1. Has the Project Plan been reviewed internally? Y/N
Plan Updates:
1. Have the necessary activities to update the Project Plan/ Budget at the end of each phasebeen identified in the WBS? Y/N
8/3/2019 Software Engineering Doc Doc 4993
4/32
LAB 11
Software Project Management Plan
Automated Railway Reservation System
Huitang Li
Vahid Keshmiri
Yasin Esmail
Zaida M. MoralesNatasha Dunaeva
Rehan Khan
November 17, 2000
Version Changes Made Date
1.0 First Group Review 9/17/00
1.1 Second Group Review 9/24/2000
1.2 CRM Review Version 10/01/2000
2.0First Pass AfterReview
10/20/2000
2.1 Situation update 11/13/2000
2.2 Second Situation 11/17/2000
http://www.geocities.com/cs5391/ManagementPlan1.htmlhttp://www.geocities.com/cs5391/ManagementPlan2.htmhttp://www.geocities.com/cs5391/ManagementPlan3.htmhttp://www.geocities.com/cs5391/ManagementPlan4.htmhttp://www.geocities.com/cs5391/ManagementPlan4.htmhttp://www.geocities.com/cs5391/ManagementPlan5.htmhttp://www.geocities.com/cs5391/ManagementPlan1.htmlhttp://www.geocities.com/cs5391/ManagementPlan2.htmhttp://www.geocities.com/cs5391/ManagementPlan3.htmhttp://www.geocities.com/cs5391/ManagementPlan4.htmhttp://www.geocities.com/cs5391/ManagementPlan4.htmhttp://www.geocities.com/cs5391/ManagementPlan5.htm8/3/2019 Software Engineering Doc Doc 4993
5/32
Update
Table of Contents
1. Introduction.1.1 Project Overview.1.2 Project Deliverables.
1.3 Evolution of the SPMP.1.4 Reference Materials.1.5 Definitions and Acronyms.
2. Project Organization.2.1 Process Model.
2.2 Organizational Structure.2.3 Organizational Interfaces.2.4 Project Responsibilities.
3. Managerial Process.3.1 Management Objectives and Priorities.3.2 Assumptions, Dependencies, and Constraints.3.3 Risk Management.3.4 Monitoring and Controlling Mechanisms.3.5 Staffing Approach.
4. Technical Process.4.1 Methods, Tools, and Techniques.4.2 Software Documentation.
4.2.1. Software Requirements Specification (SRS).4.2.2. Software Design Description (SDD).4.2.3. Software Test Plan.4.2.4. User Documentation.
4.3 Project Support Functions.5. Work Packages, Schedule, and Budget.
5.1 Work Packages and Schedule.5.2 Dependencies.5.3 Resource Requirements.5.4 Budget and Resource Allocation.
6. Additional Components.6.1 Index.6.2 Appendices.
8/3/2019 Software Engineering Doc Doc 4993
6/32
1. Introduction.
The Chinese railroad system currently consists of 65,000 km of rails and plans are being
developed to increase it to 70,000 km by the year 2002. It is estimated thatapproximately 3.7 million Chinese and foreign visitors use the countrys railway system.Furthermore, the railroad use is expected to increase as the population grows and newrailways are added. Therefore, the CRM have expressed great concern about automizingtheir reservation system.
Currently, the train tickets can usually be purchased at the China International TravelService (CITS) desk in major tourist hotels, through advance booking offices or foreigndesks at the train stations. In order to keep up with the increasing use of the railroadsystem in China, the existing reservation systems needs to be refined. Thus the ChineseRailway Ministry (CRM) requests proposals to build a prototype of an Automated
Railroad Reservation System (ARRS) based on their current railway system.
The new ARRS needs to be scalable enough so that it can accommodate the increase inreservations caused by new railroad building in China. The proposal must express thisideology in the project plan (PP) and implement a prototype to illustrate thisfunctionality. The PP and the prototype to be presented will be evaluated on thefeasibility of the development plan and process description. However, the managementapproach and appropriateness to the project at hand will play an important part in theselection of the proposal. If the prototype proves to be a feasible alternative to theneeded ARRS, our team will be given the opportunity to manage the overall developmentof the actual ARRS that will be implemented throughout reservation offices in China. In
the case that our plan is approved by the CRM, the PP will be updated as the projectprogresses.
1.1 Project Overview.
ARRS begins the new journey in the development of a scalable andimproved reservation system for Chinese Railroads. The goal of the
project is to create a working prototype of the ARRS, that will bedesigned to provide an electronic version of the railway passengerreservation system in China. The ARRS will have a user-friendlygraphical interface, and it will be cost effective compared to the currentnon-electronic version of the reservation system.
The objectives of the development effort are as follows:
8/3/2019 Software Engineering Doc Doc 4993
7/32
To provide existing clerks with a new environment in which tomake reservations for railroad travel.
To provide an avenue for customers to obtain their tickets in amore convenient way.
To regain control of the railway ticket sales in order to avoid
scalping and overselling of tickets. To implement a prototype of a scaled down version of the final
system to test the solution and further refine the requirements.
To collect statistics in a more efficient manner for future railroaddevelopment and construction.
To increase efficiency of reservations.
Furthermore, the project is divided into major work tasks that enables todetermine the phase of the project plan. The list below indicates the workactivities:
Problem specification
Risk Analysis Design stage
Implementation
Testing and evaluation
Quality Assurance
Maintenance
Project resources fall into two categories: people and equipment. Peopleworking for the ARRS include 26 professional software developers of
Chinese nationality, who shall be provided by the CRM, and other 6members from our management team. Furthermore, the CRM will alsoprovide the necessary hardware and software for implementing the project.The ARRS system structure to be developed will include a centraldatabase to keep all reservation information, and several web servers toprocess all reservation transactions. Travelers will be able to obtain theirtickets online through a web browser, by calling a reservation desk or atravel agency. There are no budget constraints for the project at this time.
The major milestone involves building a prototype within one month ofgetting to China, which will be a tough challenge. This prototype relatesto the attempt by CRM to develop a full-blown reservation system, whichunfortunately failed. The actual look and feel of the reservation systemprototype will be similar to the current online reservation systemimplemented by AMTRAK at www.amtrak.com.
http://www.amtrak.com/http://www.amtrak.com/http://www.amtrak.com/8/3/2019 Software Engineering Doc Doc 4993
8/32
1.2 Project Deliverables.
Table 1: Project Deliverables
Deliverable Delivery Date Delivery Location QuantitySPMP (version 1) October 5, 2000 Austin, TX 1
SPMP (version 2) December 7, 2000 Beijing, China 1
Software RequirementSpecification
December 7, 2000 Beijing, China 1
Prototype One December 7, 2000 Beijing, China 1
Software Development Plan TBD TBD TBD
High Level DesignSpecification
TBD TBD TBD
High Level FunctionPrototype
TBD TBD TBD
Detail Design Specification TBD TBD TBDDetail Product Prototype TBD TBD TBD
System Construction Plan TBD TBD TBD
System ConstructionPrototype
TBD TBD TBD
Testing and EvaluationSpecification
TBD TBD TBD
Final Product TBD Beijing, China TBD
1.3 Evolution of the SPMP.
The different parts of the project will be divided among the teammembers, who will submit their work in a group Yahoo web account. Theindividual parts of the project will be checked and put together by theproject manager. All changes will be reflected on the table at thebeginning of this document and each version and change date will benoted. A team member will regularly review all documents. Weeklyupdates shall be communicated to the project manager who willimmediately address these changes. After comments and issues areresolved, the document will be approved and a new version will be made
available.
1.4 Reference Materials.
More information about the project can be found in the followingdocuments:
8/3/2019 Software Engineering Doc Doc 4993
9/32
Introduction Chinese Railway Passenger Reservation SystemPrototypehttp://www.cs.swt.edu/~donshafer/project_documents/5391_Case.html
Situation Update Chinese Railway Passenger Reservation Systemhttp://www.cs.swt.edu/~donshafer/Marketing%20Update(1).htm
China 2000http://www.china2thou.com/
Pressman, Roger S., Software Engineering: A PractitionersApproach, McGraw-Hill Companies, Inc., 1997.
1.5 Definitions and Acronyms.
APMM AsiaPac Marketing ManagerARRS Automated Railroad Reservation System
CASE Computer Aided Software EngineeringCITS China International Travel AgencyCRM Chinese Railroad MinistryPP - Project PlanSDD - Software Design DescriptionSRS - Software Requirement SpecificationSDS Software Design SpecificationSPMP - Software Project Management PlanGUI Graphical User InterfaceQAM Quality Assurance ManagerPDM Project Development Manager
PMP Project Management ProfessionalTBD To be determinedUML Unified Modelling Language
2. Project Organization.
This section refers to the process model for the project and its organizationalstructure.
2.1 Process Model.
The ARRS project requires frequent customer and user interaction. For thatreason, our first choice included the Prototype model. However, we had doubtsabout the prototype model, and therefore we concluded to use the Spiral Model.The risk-based approach of the Spiral Model is significant to the development ofthis prototype, and it would also help select an established lifecycle model or
http://www.cs.swt.edu/~donshafer/project_documents/5391_Case.htmlhttp://www.cs.swt.edu/~donshafer/Marketing%20Update(1).htmhttp://www.china2thou.com/http://www.cs.swt.edu/~donshafer/project_documents/5391_Case.htmlhttp://www.cs.swt.edu/~donshafer/Marketing%20Update(1).htmhttp://www.china2thou.com/8/3/2019 Software Engineering Doc Doc 4993
10/32
determine a different model constructed from various phases of other lifecyclemodels. After regular reviews using the risk analysis table stated in the appendix,we decided that the best approach was to use a hybrid model that wouldimplement the risk management of the spiral model along with the incrementalmodel, which is a mixture of the prototype model and the linear sequential model.
Currently, the project revolves around two established stages: RequirementAnalysis and Prototype Development. Figure 1 shows the life cycle for thedevelopment process as well as entry and exit criteria for the different phases ofthe project.
Figure 1: Life Cycle Model
2.2 Organizational Structure.
The internal management of the project, as well as how the project relatesto the rest of the organization is included in Figure 2.
Figure 2: Organization Chart
8/3/2019 Software Engineering Doc Doc 4993
11/32
2.3 Organizational Interfaces.
The administrative and managerial interfaces between the project andprimary entities with which it interacts are presented in Table 2.
Table 2: Project Interfaces
Organization Liaison Contact Information
Customer: APMM Don Shafer 86-1-5128931
Subcontractor: None Don Shafer
Software Quality Assurance:CRM
Don Shafer 86-1-5128931
Software ConfigurationManagement: Team 2
Don Shafer [email protected]
mailto:[email protected]:[email protected]8/3/2019 Software Engineering Doc Doc 4993
12/32
Change Control: Team 2 Don Shafer [email protected]
2.4 Project Responsibilities.
The project responsibilities are presented in Table 3.
Table 3: Project Responsibilities.
Role Description Person
Project Leader Leads project team; responsible for projectdeliverables
Yasin Esmail
Project Management
Team/Analysts
Assisting in building SPMP, SRS and prototype, as
well as doing the necessary requirement and riskanalysis for the project
Zaida M. Morales
Vahid Keshmiri
Huitang Li
Natasha Dunaeva
Rehan Khan
ProjectDevelopment
Manager
Leads Chinese software developers; responsible forproject deliverables
TBD
Programming
Manager
Responsible for the communication between the
Management Team and the rest of the softwaredevelopment team; the Programming Manager is
also responsible for reallocating the humanresources and equipment of the project.
TBD
Software Managers Responsible for managing the team of 7 people;does the design of the software; after reviewing
reports from Test Engineer decides whether codeneeds to be sent back to Development Engineer for
improvement or to be send to Quality AssuranceManager for quality assurance phase
TBD
DevelopmentEngineers
Responsible for designing of software anddistributing work among Code Developers
TBD
Code Developers Responsible for writing programming code TBD
Test Engineer Responsible for testing and validation process inhis/her team; leads Test Technician in the testing
TBD
mailto:[email protected]:[email protected]8/3/2019 Software Engineering Doc Doc 4993
13/32
process and reports the results of the testing processto the software manager
Test Technician Performs the testing and validation procedure;reports found errors to Test Engineer
TBD
Quality AssuranceManager
Responsible for quality assurance; reports toSoftware Manager and Project Development
Manager
TBD
Quality Engineer Performs quality assurance procedure; reports theresults to Quality Assurance Manager
TBD
3. Managerial Process.
This section specifies the management process for this project.
3.1 Management Objectives and Priorities.
Poor management process increases the failure rate of any project.Therefore, it is essential to establish the management objectives andpriority for the ARRS. The goal of the project is to satisfy therequirements with a feasible development process that will improve thereservation process for the Chinese Railway System. The central idea ofthe management of this project is the on time delivery of a reliable andgood quality product, along with an intensive and early exchange of ideasand concepts necessary for the successful completion of the project atreduced cost. This will be achieved by early reviews of existing or newinformation and implementation on a regular basis.
In order to achieve the established management goals, managementpriorities must be rrecognized and acted upon immediately. The ARRSpriorities involves delivery of the project plan and a prototype to theCRM. Therfore, gathering and analysing information must be completedin order to fully comprehend the ARRS problem domain. Furthermore,this enables flexibility in finding innovative solutions for the problem,approximate cost schedules for the ARRS and evaluate and resolve major
risks.
The flexibility matrix in Table 4 communicates the characteristics of thedifferent project dimensions
Table 4. Flexibility Matrix.
8/3/2019 Software Engineering Doc Doc 4993
14/32
Project Dimension Fixed Constrained Flexible
Cost X
Schedule X
Scope (functionality) X
3.2 Assumptions, Dependencies, and Constraints.
The ARRS project will be tested among three major cities before beingimplemented on a larger scale. Therefore, the foundation of the prototypemust be based on several assumptions and restrictions.
Assumptions on which the project management plan is based are asfollows:
Ten trains transport the passengers between three cities known asGuangzhou, Shanghai and Nanjing. These trains originate only incities Guangzhou and Shanghai, and they make a stop at Nanjingbefore arriving to their destination.
Five trains travel from Guangzhou to Shanghai each day and fiveother trains travel from Shanghai to Guangzhou each day. Two ofthe trains traveling from Guangzhou to Shanghai stop at Nanjingeach day, and one of the trains traveling from Shanghai toGuangzhou stops at Nanjing each day. No trains originate
Nanjing.
There are five classes of tickets as listed below
Sleeping (soft) - compartment style coaches - 4 passenger percompartment
Sleeping (hard) - compartment style coaches - 6 passenger percompartment
Sitting (soft) - typical first class coach
Sitting (hard) - tourist class couch
Standing (hard and soft sitting coaches only)
Reservation can be made up to one month before a particular trip.
Seats are assigned during reservation.
8/3/2019 Software Engineering Doc Doc 4993
15/32
Phone reservation involves tickets being purchased within 24hours after making the reservation. Otherwise, the reservation willbe cancelled.
No reservations can be made 48 hours prior to the trip. Rather, it
will be done on a first come first serve basis from that point on.
Passenger lists will be provided for conductors at each stop.
The trains will be assumed to be of a constant size thataccommodates 1080 passengers at a time. They will consist of:
2 soft-sleeping coaches (12 compartments each)
2 hard-sleeping coaches (12 compartments)
2 soft-seating coaches (60 seats)
9 hard-sitting coaches (80 seats each)
The following management reports will be available:
Number of reservations made for each departure date/train
Number of customers turned away because of full trains foreach departure/train
Number of no-shows for each departure
Number and names of people who show up withoutreservation for each departure
List of high buyers of train tickets.
The expected reservations during test period may amount toapproximately 25,000 per day. This volume varies by hour, day, andseason.
Chinese Ministry will provide us with information aboutidentification process used in China, so that it can be applied to thereservation system and scalping of tickets is avoided.
Network connection will always remain established.
Dependencies, or external events, upon which the project is dependent onare:
CRM trains occasionally may become non-operational. In thatcase, a new train will be dispatched, but a delay of up to a few dayscould occur.
Scalping of tickets is a popular activity in China, and CRM wantsto discourage such practices.
8/3/2019 Software Engineering Doc Doc 4993
16/32
26 developers will be provided by the CRM as follows:
1 project manager who speaks English very well.
3 analysts, who have had extensive experience in developingapplications, none speak English, all read English, and all have
a fair ability to write in English. 1 Programmer/Analyst who has extensive telecommunications
skills and communicates fairly well in English.
11 Programmers with 5 or more years experience indeveloping extensive applications. 3 of this group haveexcellent English communication skills.
10 Programmers with less than 5 years experience. TheMinistry is extremely interested in these people receiving on-the-job training so they must be used. Only 2 of this group cancommunicate in English.
The CRM will provide all the required hardware and software
resources for the development of the project. A facilitator from CRM will help to make arrangements with
government authorities, organize travel arrangements, and serve asa host to China.
The telecommunications channels available in China are sufficientfor the development of a feasible client server system.
Three additional analysts are available from Banglore SoftwareDevelopment in Banglore, India. Our company hired them in casewe required some form of help for the ARRS project.
A software design company located in Australia is sponsored byour organization to aid if neccessary.
Two documentation specialists from our company.
Three field applications mangers from the Taiwan office.
Constraints, under which the project is to be conducted, are:
The number of trains from city Guangzhou to Shanghai and fromShanghai to Guangzhou is limited to 5 trains.
The number of passengers that can be taking a train at once is
limited to 1080 passengers.
Two of the trains traveling from Guangzhou to Shanghai stop atNanjing each day and one of the trains traveling from Guangzhouto Shanghai stops at Nanjing each day. No trains originateNanjing.
8/3/2019 Software Engineering Doc Doc 4993
17/32
The functional prototype should be available after 30 days uponthe arrival of the management team to China. This may prove tobe a serious time constraint on the development of a successfulprototype.
Communication with the Chinese team members may prove to bedifficult since some Chinese developers do not speak English andthe management team does not speak Chinese. Even with thepresence of a translator, communication may be difficult. Absenceof the translator may severely affect project development.
Team members are restricted from bringing their own equipment,and insufficient equipment supply may hinder projectdevelopment.
Team members are restricted to bringing only the analysts of the
team to China. This might affect the project development if morepeople are needed or the required skills are not available.
The majority of the Chinese population have limited access to theInternet, and thus they may not be able to get to the system.
3.3 Risk Management.
Table 5 gives a detailed description of the process used to identify,analyze, and manage the risk factors associated with the project.
Table 5: Risk Management.
Potential Risk
Risk Monitoring Risk Management
Size of the software beingvery large and largernumber of users thanplanned
Reviewing constant feedbacksfrom the customers in projectmeetings
Being flexible in the softwaredesign to accommodate thenecessary changes
The software not beingaccepted by the CRM
Response from the CRM,reviewed on every projectmeeting
Early and intensive interactionwith the customer for the successof project.
Cost factor involved in thisproject
Reviewing reports onexpenditure and other costrelated tp the estimated cost inthe SPMP
Have additional funding allocatedfor it in advance and using it incase of emergencies.
Customer requirementsamy change
CRM participation in designprocess and reviewing feedbackinformation in group meetings
A new prototype will replace theprevious one to accommodate thechange
Technology will not meet Constantly reviewing project Exploring alternatives for the
8/3/2019 Software Engineering Doc Doc 4993
18/32
expectation progress reports by ProjectDevelopment Manager andsoftware managers
outdated technologies
Lack of training on toolsand staff being
inexperienced
Reviewing progress report bysoftware managers to determine
the status of the project
Providing adequate training that isnecessary for the completion of the
projectThe prototype not beingdelivered on time
Constant reviews among teammembers to ensure continuousprogress on the prototype
Setting deadline before the actualtime for submission of the project
3.4 Monitoring and Controlling Mechanisms.
Reporting
Auditing Mechanism will be as follows: The Report Formattingprocedure will be that it will discuss the progress of the project .How is
the present phase going , it will also include the errors and difficulties thatteam had during that phase .In the last the future plans for the next phaseof the project
Software Quality Assurance Plan
The Software Quality Assurance Plan is a proposal for theSoftware Quality Assurance System of the organization. In addition, it isalso an organizational structure and a series of activities, which helpensure a persistent high quality by product monitoring and control duringthe development of the software
Quality Assurance (QA) includes procedures, techniques and tools
used to ensure that a product meets or exceeds specified standards duringits development cycle.
The purpose of this Software Quality Assurance Plan (SQAP) is to
define the techniques, procedures, and methodologies that will be used toassure timely delivery of the software that meets specified
requirements within project resources.
Management
Within an organization, Quality Assurance should be carried out
by an independent software quality assurance team that reports toSoftware Manager and project development manager The QualityAssurance team will be associated with a particular development groupbut also responsible for Quality Assurance across the organization. Figure3 shows the basic management structure for software Quality Assurance.
8/3/2019 Software Engineering Doc Doc 4993
19/32
Figure 3: Basic Management Structure
The Quality Assurance team must, in the first place, ensure the
quality of the software process. So, the Quality Assurance team:
Defines process standards such as how reviews should beconducted, and when reviews should be held;
Monitors the development process to ensure that the standards are
being followed; and
Reports the software process to software manager and projectdevelopment manager.
Responsibilities
The Quality Assurance team is responsible for the development
and maintenance of the product and process standards, The QA team isresponsible for proposing and establishing techniques, procedures, andmethodologies that may be effective used to assure timely delivery of thesoftware that meets specified requirements within project resources.
Communication and Reporting Plan
Table 6 shows the reporting and communication plan for the project. Thismay change as the project progresses.
Table 6: Communication and Reporting Plan.
8/3/2019 Software Engineering Doc Doc 4993
20/32
Information
Communicated
From ToTime Period
Project Review ProjectDevelopment
Manger
Management TeamOnce per two
weeks
Status Report Team 1, 2, 3
SoftwareManager
Project DevelopmentManager
Every eight days
Status Report ProgrammingManager
Project DevelopmentManager
Once a week
Status Report DevelopmentEngineer, TestEngineer and
QualityAssuranceManager
Team 1, 2, 3Software Manager
Weekly
Progress report QualityAssurance Team
Software Manager and ProjectDevelopment Manager
Weekly as needed
Status Report Test Technicianand Code
Developers
Development Engineer andTest Engineer
As needed
3.5 Staffing Approach.
We intend to use the people recommended by the CRM for various tasks.At the moment, we dont foresee a need for any extra staffing on theproject. The staffing approach for this project is as follows:
Management Team Yasin, Zaida, Natasha, Rehan.
The Project Management Team decides who is qualified enough to beProject Development Manager among the 26 people provided by theCRM.
The Software Manager for team 1, team 2, and team 3 and theProgramming Manager is interviewed by the Project DevelopmentManager and the Project Management Team. The ProjectDevelopment Manager decides who gets to be manager of which team.
8/3/2019 Software Engineering Doc Doc 4993
21/32
The Software Manager of team 1, team 2, and team 3 and theProgramming Manager will decide who will become DevelopmentEngineer, Test Engineer, Code Developer, and Test Technician. In theend, the Project Development Manager approves the decision.
The Project Development Manager and the Project Management Team
staff the Quality Assurance Manager and the Quality Engineerpositions.
Vahid and Huitang will receive UML and CASE training in the nexttwo weeks in USA and apply this new knowledge on this project toimprove work efficiency and effectiveness. They will not go to China.However, parts of their jobs will serve as home knowledge base forclient training and project plan advising.
The Project Manager gets to decide or redistribute the work forceamong teams in the case that any member of the team gets sick.Nevertheless, he needs to inform the Project Development Manager
about it.
4. Technical Process.
This section specifies the technical methods, tools, and techniques to be used on theproject. It also includes identification of the work products and reviews to be held andthe plans for the support group activities in user documentation, training, softwarequality assurance, and configuration management.
4.1 Methods, Tools, and Techniques.
The approach used for the project development is an objected orientedtechnique, and thus, the programming language will be object oriented aswell. Furthermore, Function Points will be used to track defects on themodification and maintenance. More details will be added as the SoftwareRequirements Specification is further developed.
The CASE tool and its object oriented development methodology withunified modeling language representation (UML) and instant Java codegeneration is used in this software development project. The manager withProject Management Professional (PMP) knowledge works closely withinternational marketing groups to use all the varied hardware and software
capabilities within the corporation to win new international business.
4.2 Software Documentation.
The work falls into separate categories, where each category involves oneor more people working on it. A reference to initial computing designstructure is shown in Section 4.2.2 Software Design Description (SDD) toillustrate the functionalities of the work products. The initial design
8/3/2019 Software Engineering Doc Doc 4993
22/32
requires four work products. However, this is a target of constant changeafter every review. The work products are divided according to theirdifferent contributions to the whole project. For instance, data storage andwarehousing is a different module from the server, since both havedifferent functionalities. One holds data, while the other controls traffic
flow and access to the database.
Table 7 displays the work products and the types of reviews held for eachone.
Table 7: Work Products and Review Schedules
Work Products Review
DatabaseWarehousing
Schema DesignReview
ServerImplementation
Design Review
User InterfaceDesign
FunctionalReview
Coding Code Review
4.2.1 Software Requirements Specification (SRS).
This requires separate documentation so refer to the SRSdocument for more information.
4.2.2 Software Design Description (SDD).
Figure 4 is not a concrete software design description, but itis the basis for the design structure that we will develop at alater time. Furthermore, the diagram helped to determineour resource requirements and it effectively focused ourthoughts and refined our ideas. Once again, this is not anestablished SDD for the project but a rough implementationof the project design. More information will be providedduring the High Level Design and Detailed Design phases.
Figure 4: Software Design Description
http://www.geocities.com/cs5391/SRS4.htmhttp://www.geocities.com/cs5391/SRS4.htm8/3/2019 Software Engineering Doc Doc 4993
23/32
4.2.3 Software Test Plan.
90% of the gathered information relevant to the ARRS inthe SPMP must be evaluated and fully understood. Theproblem domain must be explored extensively then weproceed to the SRS. The SRS can be tested in two ways.First, we can validate the SRS by cross checking it with theSPMP to ensure all identified risks are resolved and therequirements are satisfied. The second test will occur whenthe CRM is fully satisfied with the SRS and agrees toproceed to the next phase of the project.
The design must satisfy the SDD, since it is based on theSRS. Reviews of the SDD must be based on the SRS, andthe test criterion includes strictly validating the SDDagainst the SRS. Each risk in the SRS must be confrontedand shown to be resolved in the SDD. Redesign oralteration of the SDD will be implemented if unsatisfiedrequirements are confronted during SDD validation andverification tests or reviews.
8/3/2019 Software Engineering Doc Doc 4993
24/32
Each developer will be responsible for a portion of theproject. There are two things that are important in thecoding phase. First, the code functionality must strictlymeet the SDD. The second important part is theconsistency of code writing for the ease of product
maintenance.Therefore, weekly code reviews shall track the progressmade by individuals, and furthermore, eradicate anyundetected serious errors. In addition, there shall beconsistency in the program, and the developers will becomefamiliar with each others code. This makes it easier forthem to maintain the product in the future. Finally, the codereviews will be verified against the SDD to ensure that theproject implementation follows the process we originallyintended.
Developers work will be validated and verified to satisfythe SRS and SDD by other developers before commencingthe system and functional tests. Once all modules havebeen verified, only then will the modules be integratedtogether. Ten Chinese testers, who will make sure that thesystem meets the SRS and the SDD, will perform thesystem test.
4.2.4 User Documentation.
User documents will be uploaded online and the CRM will
receive a hardcopy after the project completes. The twodocument specialists from our organization will preparethese documents.
4.3 Project Support Functions.The project manager is responsible for the project
configuration management.Zaida is assigned the job for software quality assurance, thetesters from CRM are responsible for verification andvalidation while Rehan and Natasha are the supervisors forplanning and inspecting the verification and validation.
5. Work Packages, Schedule, and Budget.
In this section, the work packages, dependency relationships, resource requirements,allocation of budget and resources to work packages, and a project schedule arespecified
5.1 Work Packages and Schedule.
8/3/2019 Software Engineering Doc Doc 4993
25/32
Table 8 shows the work packages for the activities and tasks that must becompleted in order to satisfy the project agreement. Each work package isuniquely identified.
Table 8: Work Packages and Schedule
Work Packages, Tasks &Activities
Week1 2 3 4 5 6 7 8 9 10 11 12
ConceptExploration
Internal CaseStudy
Communicatewith CRM
Initial ProjectPlan
SPMP Pass #1
Review by CRM
SPMP Pass #2
Travel &
Orientation
Meeting with
CRMRepresentatives
Meeting with 26programmers
Recruiting intoOrganizational
Chart
OOP Training
Initial SRS SRS Pass #1
Prototype 1(Screens)
SRS Review byTeam
Final SPMP Pass #3
Final SRS SRS Review asper SPMP
SRS Submissionto CRM
Design High levelDesign
High LevelReview
Prototype 2Detail Level
Design
Detail LevelReview
Prototype 3
SystemConstruction
Source Code &Executable
8/3/2019 Software Engineering Doc Doc 4993
26/32
Program
Review by CRM
SystemVerification& Validation
TestingSummary Report
Review by CRM
CustomerAcceptanceFeedback
SystemDelivery
System Delivery& Maintenance
5.2 Dependencies.
Figure 5: Dependencies of the Main Work Packages
8/3/2019 Software Engineering Doc Doc 4993
27/32
8/3/2019 Software Engineering Doc Doc 4993
28/32
5.3 Resource Requirements.
The resource requirements are divided into four separate categories, andthese may be needed at different times during the lifecycle of the project.The division of resources falls into hardware and software requirements,
travel, computer time and number and types of personnel.
At the initial stages of the project, we need offices, phones, fax machinesand other editorial and visual programs on each workstation. This phase ofthe project involves the six members of team 2 refining and polishing theSRS and SDS. The time frame varies from six months to one year for asatisfactory completion of these phases since they are a vital part of theproject implementation.
Furthermore, a large chunk of resource requirements involves hardwareand software. However, major use of these resources comes into play
after the project design is completed. Some of the resources required arelisted below:
A network (LAN) is required to facilitate the whole operation.This network consists of a database server, several workstations,and a build server to host the compilers. Refer to section 4.2.2 -Software Design Description for more information.
Each person will have a separate workstation. Since there are 26Chinese employees and four members of team 2, then we need 30workstations for each employee.
A Linux operating system for different servers and apache serverprograms is also required.
These are the basic computer resources required. The coding periodinvolves the use of all hardware and software, as well as 30 personsworking on the project. Therefore, all resources are used at this point intime.
Travel issues for maintenance purposes will be addressed after thecompletion of the project. Therefore, such resource requirements come at
the end of the project. However, there will be traveling done to the threedifferent cities once the installation of the software and testing begins.Once again, such requirements fall at the later stages of the projectlifecycle.
The other resource that is worth acknowledging since it may be usedextensively throughtout China. The wireless resource falls in both thesoftware and hardware categories. According to our Liason, Don Shafer,
8/3/2019 Software Engineering Doc Doc 4993
29/32
the mobile phones have excellent reception in China, and several Chineseown these mobile units. Furthermore, the technology to have access to theinternet is possible through specially designed mobile phones that supportWAP structure. Therefore, we decided to use the semi-conductorfabrication plant in Taiwan to design the components that provide the
support for internet access. Additionally, the cellular phone assembly plantin Guangzhou can assemble these components to be sold to the Chinese.Finally, the application design such as WML (language interpreted by theWAP technology) shall be implemented by us so that the Chinese have theability to access the ARRS using their mobile units.
Use of resources is limited to a minimum during the initial stages of theproject. However, this increases once the coding, testing and installationprocesses begin. Close to the end of the project, the requirement of theseresources stabilizes since some amount of maintenance is expected.
Figure 6 displays the relation of the resource requirement as a function oftime.
Figure 6: Approximate Resources Vs Time Graph
5.4 Budget and Resource Allocation.
Table 9: Resource Allocation
ProjectManagement
Team and
Project
Development,
Programming
and Software
Managers
Quality
Assurance
Manager
and Quality
Development
Engineer
and Code
Developer
Test
Engineer
and Test
Technician
8/3/2019 Software Engineering Doc Doc 4993
30/32
Development
Manager
Engineer
Personnel 1 Chineseperson (with
English
skills) and 4members ofteam 2
4 Chineseanalysts/
programmers
6 Chineseanalysts/
programmers
9 Chineseanalysts/
programmers
6 Chineseanalysts/
programmers
Hardware Twoworkstations,
one perperson, andone box for
databasewarehouse
4workstations,
one per person
6workstations,
one perperson
9workstations,
one perperson
9workstations,
one perperson
Other
Required software for the project includes: Oracle DBMS, Linux OperatingSystem, Apache Web Server, Sun Java Virtual Machine 1.2, Sun JavaDevelopment Kit 1.2, C/C++ Compiles, Internet Explorer or Netscape Navigator,and some version control software, such as CVS or CMVC, wireless equipement.
Budget
Some of the basic items required for the development process, and their prices arelisted in Table 10.
Table 10: Budget Allocations
Resource Description
Allocated Budget
Project Management Team Wages for 2months
$39166
Traveling Expenses (Round Trip Air-Fare for 4people)
$6000
Traveling Expenses (Round Trip Train-Fare for4 people)
$240
Issue Work Visa to China (Visa F BusinessVisa)
$180
Living Expenses (30 Days) $1800Eating Expenses (30 Days) $6000Software
OracleLinuxApache
$200
$29.95Free software available on the web
8/3/2019 Software Engineering Doc Doc 4993
31/32
Hardware Provided by CRM
Total $53,616
6. Additional Components.
This section contains any additional components required for clarification of thedifferent part of the SPMP.
6.1 Index.
An index to the key terms and acronyms used throughout the SPMP willbe provided in the future.
6.2 Appendices.
A. Current Top 10 Risk Chart
Risk Items Risk Management Techniques
Personnel ShortfallsStaffing with top talent, job matching; team building; moralebuilding; cross training; pre-scheduling key people
Unrealistic schedulesand budgets
Detailed, multi source cost and schedule estimation; design tocost; incremental development; software reuse; requirementscrubbing
Developing the wrongsoftware functions
Organizational analysis; mission analysis; ops-conceptformulation; user surveys; prototyping; early users' manuals
Developing the wronguser interface
Task analysis; prototyping; scenarios; user characterization(functionality, style, workload)
Gold PlatingRequirement scrubbing; prototyping; cost-benefit analysis; designto cost
Continuing stream ofrequirement changes
High change threshold; information hiding; incrementaldevelopment (defer changes to later increments)
Shortfalls in externallyfurnished components
Benchmarking; inspections; reference checking; compatibilityanalysis
Shortfalls in externally
performed tasks
Reference checking; pre-award audits; award-fee contracts;
competitive design or prototyping team building
Real-time performanceshortfalls
Simulation; benchmarking; modeling; prototyping;instrumentation; tuning
Straining computer-science capabilities
Technical analysis; cost-benefit analysis; prototyping; referencechecking
8/3/2019 Software Engineering Doc Doc 4993
32/32
B. Current Project Work Breakdown Structure
C. Current Detailed Project Schedule
D. Software Risk Management Plan
1 Identify the projects top10 risk items
2 Present a plan for resolving each risk item
3 Update list of top risk items, plan, and results monthly
4 Highlight risk-item status in monthly project reviews.Compare with previous months ranking status
5 Initiate appropriate corrective actions
D. General Information