Software Project 2
Software Project 2
CAP-412
Software Project
Management
Submitted to: Submitted by:
Ans 2
Data/Process Oriented
– Data: Information Systems, Substantial Database, Relational
Model
– Process: Scientific, Embedded control systems. Object
Oriented
– Hybrid: Both Data & Process Characteristic
Product/Application Specific
– Product: General Tool, Remote Updates/Helpdesk, Well
Structures
– Application Specific: Niche, Sector, Business Knowledge is
required. Integration, Open Interfaces
Special Characteristics
– Special Hardware/software requirements
– Safety Critical Application
– Specific tool is required (graphics, expert system, etc.)
Product Uncertainty
– Requirements are not well defined/Fully documented
– The users do not understand what the software system will do
( potential gap between the users requirements and the
software detailed design)
– Undefined workflows and interrelations among sub
applications
Process Uncertainty
– Introducing new methods/processes to the project team
– New Application Building Tools
Resource Uncertainty
– Availability of staff
– Availability of knowledge/experience
Project type risks
– Availability of funding through the final stage of the project
– Availability & knowledge level of the users
– Clear definition of interfaces, conversion & implementation
Ans 3
Life cycle models describes the inter-relationships between software
development phases.
* Waterfall Model
* Spiral Model
* V-Model
* Prototyping Model
Since the life cycle steps are described in general terms, the models are
adaptable and their implementation details will vary among different
organizations. The spiral model is the most general. Most life cycle
models can infact be derived as special instances of the spiral model.
Organizations may mix and match different life cycle models to develop
a model more tailored to their products and capabilities.
Waterfall Model
This is also known as Classic Life Cycle Model (or) Linear Sequential
Model (or) Waterfall Method. This has the following features:
The waterfall model derives its name due to the cascading effect from
one phase to the other as is illustrated in the Figure. In this model each
phase has a well defined starting and ending point, with identifiable
deliveries to the next phase.
System/Information Engineering
Feasibility:
Defining a preferred concept for the software product and determining
its life-cycle feasibility and superiority to alternative concepts.
Requirements:
A complete, verified specification of the required functions, interfaces,
and performance for the software product.
Product Design:
Detailed Design:
Coding:
A complete, verified set of program components. A proper functional
software product composed of the software components.
Implementation:
Maintenance:
A fully functioning update of the hardware-software system repeated for
each update.
Phaseout:
Advantages
Disadvantages
Waterfall Model:
waterfall performs well for products with clearly understood
requirements or when working with well understood technical tools,
architectures and infrastructures. It's weaknesses frequently make it
inadvisable when rapid development is needed. In those cases,
modified models may be more effective.
Strengths
* Inflexible.
* Only the final phase produces a non-documentation deliverable.
* Backing up to address mistakes is difficult
Spiral Model
The spiral is a risk-reduction oriented model that breaks a software
project up into mini-projects, each addressing one or more major risks.
After major risks have been addressed, the spiral model terminates as a
waterfall model.
Strengths
* Early iterations of the project are the cheapest, enabling the highest
risks to be addressed at the lowest total cost. This ensures that as costs
increase, risks decrease.
* Each iteration of the spiral can be tailored to suit the needs of the
project.
Weaknesses
Prototype Models:
Strengths
Weaknesses
* It is impossible to know at the outset of the project how long it will
take.
* There is no way to know the number of iterations that will be required.
Code-and-Fix
If you don't use a methodology, it's likely you are doing code-and-fix.
Code-and-fix rarely produces useful results. It is very dangerous as
there is no way to assess progress, quality or risk. Code-and-fix is only
appropriate for small throwaway projects like proof-of-concept, short-
lived demos or throwaway prototypes.
Strengths
Weaknesses
* Dangerous.
* No means of assessing quality or identifying risks.
* Fundamental flaws in approach do not show up quickly, often
requiring work to be thrown out.
PART - B
Q5: What are the legal issues that are to be taken care of while
creating a project?
Ans 5
Legal Issues
Intellectual Property Rights
Copyright
Patents
Trademarks
Duty of Confidence
Scope
8 Data Protection Principles
Annual Notification
Rights of Subjects
Exemptions
Information Commissioner
Ans 6
1. Use outline formats and listings whenever possible to break up
narrative texts.
2. Use visuals to enhance and explain abstract concepts and
relationships. (Do not overuse.)
3. Don't overkill a point. State it, support it, and move on to the next
point.
4. Use forecasting and internal summaries to help the reader know
where they are and where they are going.
5. Be generous with transitions as they will help the reader to know
where they have been and where they are going.
6. Avoid equivocal language, such as: "might, could, ought, may,
should, hope, will consider, it appears".
7. Don't avoid significant issues which apply to the project or potential
problems which may be relevant to the project. It is better to take a
stand and discuss a process for dealing with anticipated problems than
to avoid these questions.
8. Avoid inflated rhetoric or impossible promises.
9. Avoid unsupported subjective arguments.
10. Do not assume that the reader will be intimately familiar with the
subject.