CS615 Software Project Management Assignment 1 Solution Spring 2013

Question 1: 10 Marks
Identify from the given situations, which one is project and which one is a process? Identify each with one line solid reason. (0.5 + 0.5 =1 Mark Each)
1. Designing a map for new office building. Process
2. Constructing a new office building. Project
3. Changing the oil of a vehicle. Process
4. Conducting polling for Election.Process
5. Developing Core i5 computer based system. Project
6. Loading of Luggage in a vehicle. Project
7. Payroll calculation of staff members. Process
8. Deploying a traffic plan system. Project
9. Teaching particular subject to a class. Project
10. Civil services competitive examination 2013. Project

Question no 2: 10 Marks
Suppose you are required to develop a Hospital Management System for providing different online services to the patient attenders and the staff, which is considered as the complex system as along with patient record, medicinal record is also kept, which keeps on changing with the demanding requirement of the health sector. You being a Software Project Manager facing different requirements changing time to time by the management of the hospital. You are leading a team of software engineers and you need to choose the process model first for having an effective design model before proceeding to coding phase. Which process model you choose and why you choose the selected process model? State with any four solid reasons.
2 + (2*4= 8) = 10 Marks

I would choose water fall model for because of following reason:

Even though the waterfall model is over fifty years old, supporters continue hailing it as the most effective method for creating a piece of software. Here are some of the reasons why programmers use the waterfall method:

  • Whole project must be fleshed out before coding can begin, which puts a greater emphasis on documentation and source code.
  • Easier to fix problems in earlier stages rather than discovering them later.
  • Smoother integration of new team members into project due to documentation.
  • Simple phase transitions leading to less miscommunication and errors.
  • Identifiable milestones provide a sense of accomplishment.
  • Rigid structure increases team’s discipline and ability to maintain schedules.

Waterfall Model

Waterfall model is the most common version of Software Development Life Cycle (SDLC) for software development. It is called Waterfall as it defines a rigid and linear development method where each phase is completed before the next one is started and there is no loop back. It follows the principle of Doing things right the first time & every time.


Rightway have been doing application and product development based on waterfall models for a long time and has been key role players in all stages of SDLC. Our expertise and experience have helped our clients in clearly laying down their requirements in understandable format using advanced tools and managing project execution to ensure definite end results.



Iterative Waterfall SoftwareDevelopment Model

An improvement of the waterfall model is Iterative Waterfall Development Model. It involves less risk than traditional waterfall approach. In this method, the complete project is divided into various phases. And each phase is executed based on traditional waterfall method. Dividing big projects into identifiable phases reduces the risk involved as scope of work is less and there are deliverable at the end of each phase that can be reviewed and improved upon before moving to next phase. It is generally chosen over the waterfall approach for large, expensive, and complicated projects.


The shortcoming of this model is that you are forced to estimate each phase separately and sometimes this is not possible as phases are not separate but intertwined.


Waterfall Software Development Model


This model is preferred where the requirements are clearly and un-ambiguously outlined. Complete project execution is divided in to well defined stages of analysis, design, development, testing & QA, release & user acceptance followed by maintenance and support. A schedule is typically set with deadlines for each stage of development at the start of the project. In theory, this model leads to the project being delivered on time because each phase has been planned in detail. Practically this model involves high risk as it does not embrace the inevitable changes and revisions that become necessary with most of the projects. Once an application is in the testing stage, it is very difficult to go back and change something that was not thought of in the analysis stage.