Saturday, 17 December 2011


  • Complexity
  • Longevity and Evolution
  • High User Expectation
 Complexity:
  • The software systems are very large and complex. Complexity is dictated by the problems the systems are intended to solve and the services they are intended to provide.
  • No individual can comprehend every detail of the system.The system must be broken down into manageable parts.The cooperative efforts are required.
  •  Methodologies, techniques, and tools that work well for small systems developed by individuals are not effective for large systems developed by teams.    
Longevity and Evolution:
  • Because of economic, political, and other constraints,software systems are often in service for very long periods of time. 
  • During their lifetimes, software must constantly evolve to accommodate changes in users’ needs and environments.
  • Making changes to software systems is a difficult task.
  • Furthermore, maintenance not only is costly and time-consuming, but also usually degrades the quality of the system being maintained.
  • The maintenance cost of the software system over its lifetime is far greater than its initial development cost.  
High User Expectation: 
  • n the past: Computers were mainly used in universities, research institutions, and large corporations. The majority of software systems users were engineers and scientists, who had the technical skills to handle the glitches they might encounter while using the system. 
  • Today:   Computers are used in homes, schools, and business of all sizes, and are used for pleasure as well as for work. Majority of software users are nontechnical, ordinary people.Computer software products are considered as consumer products. The products are expected to perform as household appliance. Software systems are expected to be “bug-free”, but such perfection is next to impossible
Software Development development are: 

  • to find effective solution to control complexities of software systems;
  • to manage the longevity and evolution of software systems;
  • to deliver software systems with higher  reliability and usability.




  

0 comments:

Post a Comment