Quality Focus Process Method Tools

J.E.D.I

1.1.1 Quality Focus

At the very foundation of this layer is a total focus on quality. It is a culture where commitment to continuous improvement on the software development process is fostered. This culture enables the development of more effective approaches to software engineering.

1.1.2 Process

The process integrates the other layers together. It defines a framework that consists of key process areas that define and enable rational and timely delivery of the computer software. The key process areas are the basis for the software project management. They establish what technical methods are applied, what tools are used, what work products need to be produced, and what milestones are defined. They also include assurance that quality is maintained, and that change is properly controlled and managed.

1.1.3 Method

Methods define a systematic and orderly procedures of building software. They provide an overall framework within which activities of the software engineer are performed. These activities include a wide array of tasks such as requirements analysis, design, program construction, testing and maintenance. Methodology is the science of systematic thinking using the methods or procedures used in a particular discipline. There are several software engineering methodologies that are used today. Some of them are briefly enumerated below. Structured Methodologies: • Information Engineering • Software Development Life CycleProject Life Cycle • Rapid Application Development Methodology • Joint Application Development Methodology • CASEMethod Object-oriented Methodologies: • Booch Method • Coad and Yourdon Method • Jacobson Method • Rambaugh Method • Wirfs-Brock Method

1.1.4 Tools

Tools provide support to the process and methods. Computer-aided software engineering provides a system of support to the software development project where information created by one tool can be used by another. They may be automated or semi- automated. Most tools are used to develop models. Models are patterns of something to made or they are simplification of things. There are two models that are generally developed by Software Engineering 8 J.E.D.I a software engineer, specifically, the system model and the software model. The system model is an inexpensive representation of a complex system that one needs to study while a software model is a blueprint of the software that needs to be built. Like methodologies, several modeling tools are used to represent systems and software. Some of them are briefly enumerated below. Structured Approach Modeling Tools: • Entity-relationship Diagrams • Data Flow Diagrams • Structured English or Pseudocodes • Flow Charts. Object-oriented Approach Modeling Tools: • Unified Modeling Language UML Software Engineering 9 J.E.D.I

1.2 Quality within the Development Effort