Chapter 1
l
l
Nature of Software System:
- Ubiquitious – variety of application: business, engineering & scientific applications
l
- Simple to complex, internal to public, single function to enterprise wide, one location to distributed, batch or real-time, informational to mission critical.
Challenges in Large Projects:
lDeveloping large/complex software application is very challenging
- • Effort intensive
- High cost
- Long development time
- Changing needs of users
- High risk of failure, user acceptance, performance, maintainability
Quite different from one-time program where authors and users are the same
SUCCESSFUL SOFTWARE SYSTEM..
lS/ware development projects have not always been successful
lWhat is successful software applications?
- •Development completed
- It is useful
- It is usable and
- It is used
- Cost effectiveness and maintainability applied
REASONS FOR FAILURE
3. Quality extremely important: relates to failures, efficiency, usability ..
- lSchedule slippage
- Cost over-runs
- Does not solve user’s problem
- Poor quality of software
- Poor maintainability
l
Ad-hoc software development…
Ad-hoc software development…
- •No planning (e.g. no milestones defined)
- Deliverables to users not identified
- Poor understanding of user requirements
- No control or review
- Technical or incompetence of developers
- Poor understanding of cost and effort by both developer and user.
ENGINEERING..
- lRequires well-defined approach – repeatable, predictable
- Large projects require managing the project itself
- •Manage project, people, money (cost), equipment, schedule
- •Scale makes big difference .. Compare building hut, 2-storey house, large condominium/hotel
- •People are willing to pay for quality!
Large Projects…
l# Involve different types of people
- •Large building: architects, civil engineer, electrical engineer, workers (carpenters..etc)
l# Continuous supervision for quality assurance
- •On site supervisors (check cement/ steel quality.. Etc. )
l# Many deliverables: architecture plan, model, structure diagrams, electrical cabling layout etc.
l# Standards, regulations, conventions need to be followed.
l# Steps, milestones define and reviews are carried out, progress is visible