Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 280 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
280
Dung lượng
5,3 MB
Nội dung
[...]... In the remainder of this chapter, we will learn – That quality, cost, and schedule are the main forces that drive a (industrialstrength) software project – How cost and productivity are defined and measured for such a project, and how quality of software is characterized and measured – That large scale and change are important attributes of the problem domain and solution approaches have to handle them... is a basic driving force behind softwareengineering and a major reason for using the different tools and techniques Besides cost and schedule, the other major factor driving softwareengineering is quality Today, quality is one of the main mantras, and business strategies are designed around it Unfortunately, a large number of instances have occurred regarding the unreliability of software the software. .. However, asoftware process itself is a dynamic entity, as it must change to adapt to our increased understanding about software development and availability of newer technologies and tools Due to this, a process to manage the software process is needed The basic objective of the process management process is to improve the software process By improvement, we mean that the capability of the process to produce... user, installation, etc.) One of the main advantages of the waterfall model is its simplicity It is conceptually straightforward and divides the large task of building asoftware system into a series of cleanly divided phases, each phase dealing with a separate logical concern It is also easy to administer in a contractual setup—as each phase is completed and its work product produced, some amount of... to successfully execute a project, a proper method for engineering the system has to be employed and the project has to be tightly managed to make sure that cost, schedule, and quality are under control Large scale is a key characteristic of the problem domain and the solution approaches should employ tools and techniques that have the ability to build large software systems Change is another characteristic... corrective maintenance Maintenance is also needed to change the delivered softwareto satisfy the enhanced needs of the users and the environment, leading to adaptive maintenance Over the life of asoftware system, maintenance cost can far exceed the cost of original development The maintenance -to- development-cost ratio has been variously suggested as 80:20, 70:30, or 60:40 Due to this high cost, maintainability... a ect the software development activity but are beyond the purview of softwareengineering The processes that deal with the technical and management issues of software development are collectively called the software process As asoftware project will have to engineer a solution and properly manage the project, there 12 2 Software Processes are clearly two major components in asoftware process a development... software system that is in operation Why will changes to such a system cost a lot more than just making changes to the source code files? 2 Software Processes Now that we have a better understanding of the problem domain that softwareengineering deals with, let us orient our discussion tosoftwareengineering itself Softwareengineering is defined as the systematic approach to the development, operation,... operation, maintenance, and retirement of software [52] We have seen that besides delivering software, high quality, low cost, and low cycle time are also goals which softwareengineering must achieve In other words, the systematic approach must help achieve a high quality and productivity (Q&P) In software, the three main factors that influence Q&P are people, processes, and technology That is, the final quality... measured as lines of code delivered per personmonth – Software quality has many attributes which include functionality, reliability, usability, efficiency, maintainability, and portability Reliability is often 8 1 The Software Problem considered as the main quality attribute, and as unreliability in software is due to defects in the software, quality can be characterized by number of defects per thousand . in all areas of computing and information science. From core foundational and theoreti- cal material to final-year topics and applications, UTiCS books take a fresh, concise, and modern approach and. software project. – How cost and pro ductivity are defined and measured for such a project, and how quality of software is characterized and measured. – That large scale and change are important attributes. delivered and deployed, it enters the maintenance phase. Why is maintenance needed for software, when software has no physical components that can degrade with age? Software needs to be maintained