Lesson 1 Software Development
Lesson 1 Software Development
Topic : Software
Development
Compiled by:
Careene McCallum-Rodney
INTRODUCTION TO SOFTWARE
DEVELOPMENT
__________________________________________________
Every field of study has its own name for the systematic
____
method used to solve problems by designing suitable
solutions. In the world of software, the procedure is called
the software development procedure.
Requirements for
standard interfaces
Assignment 1
Not only has software development become more costly (especially for
bespoke products), but additionally, many times the projects run over-budget.
They cost more than were originally predicted, were unreliable, difficult to
maintain and performed poorly.
Three quarters of all large software products delivered to the customer are
failures that are either not used at all, or do not meet the customers real
needs or requirements. This is so because software development is often
undertaken with only a vague notion of the customers requirements. Many
software efforts have failed because developers lack the essential formal
and detailed description on data, functionality, design constraint and
validation criteria, which can be accessed through frequent communication
between developers and customers.
Another problem that still exists in software development is the time taken
to develop software. Software developers regularly underestimate how
long it takes to design, write and test their software. Mostly, this problem
still exists because developers are trying to produce massive software
products with old tools, outdated methods and inadequate management
techniques. Sometimes, the assumptions made is that, if the software is
behind schedule, more programmers can be added and thus hasten the
process. Adding people to a late software project makes it later. Another
contributing factor to the time factor is that project requirements continually
changes. The impact of change will vary according to when it was
introduced.
3. Use the MLA research style (you need to personally research this
method) of writing throughout the essay and also for the bibliography.
4. Must use at least 3 books and 2 websites. Special marks are allotted to
students who use computer journals or magazines and personally
interviewed a software developer or expert.
The more intuitive the user interface the easier it is to use, and the easier it
is to use and the less expensive to use it. The better the user interface the
easier it is to train people to use it, reducing your training costs. The better
your user interface the less help people will need to use it, reducing your
support costs. The better your user interface the more your users will like
to use it, increasing their satisfaction with the work that you have done.
The user interface is often the yardstick by which that system is judged.
An interface which is difficult to use will, at best, result in a high level of
user error. At worst it will cause the software system to be discarded,
irrespective of its functionality. If information is presented in a confusing
and misleading way, the user may misunderstand the meaning of an item
of information. They may initiate a sequence of actions which corrupt data
or cause catastrophic system failure.
The structure principle. Your design should organize the user interface
purposefully, in meaningful and useful ways based on clear, consistent
models that are apparent and recognizable to users, putting related
things together and separating unrelated things, differentiating
dissimilar things and making similar things resemble one another. The
structure principle is concerned with your overall user interface
architecture.
The simplicity principle. Your design should make simple, common tasks
simple to do, communicating clearly and simply in the users own
language, and providing good shortcuts that are meaningfully related to
longer procedures.
The visibility principle. Your design should keep all needed options and
materials for a given task visible without distracting the user with
extraneous or redundant information. Good designs dont overwhelm
users with too many alternatives or confuse them with unneeded
NEXT PREVIOUS MAIN MENU
information.
3. Requirements for standard interfaces
The reuse principle. Your design should reuse internal and external
components and behaviors, maintaining consistency with purpose
rather than merely arbitrary consistency, thus reducing the need for
users to rethink and remember.
Requirements:
This is the set of activities and associated results which produce a software
product. These activities are mainly carried out by software engineers.
1. Software specification
2. Software Development
3. Software validation
The software must be authenticated to ensure that it does what the
customer wants.
4. Software evolution
The software must develop to meet changing customer needs.
Consider the :
1. process characteristics
Reliability Is the process designed in such a way that process errors are
avoided or trapped before they result in product errors?
Rapidity How fast can the process of delivering a system form a given
specification be completed?
The cost of going back and adapting a complete deliverable are high.
If the problems are discovered during the process, inelegant solutions
are sometimes adopted to avoid the need to change accepted project
deliverables.
BASIC APPROACH
R is k P r io r itiz a tio n
R is k M a n a g e m e n t
R is k R e d u c tio n
C o n tin g e n c y P la n n in g
R is k C o n t r o l
R is k M o n it o r in g
C o n tin u o u s R e a s s e s s m e n t
1. Waterfall Approach
2. Evolutionary Development including rapid prototyping.
3. Fountain Approach
4. Formal Transformation
5. Re-use oriented approach