Page 114 - DCAP405_SOFTWARE_ENGINEERING
P. 114
Unit 7: Software Engineering Practice
In design modeling, the coupling among components should be as low as is needed and Notes
reasonable.
Design models should be able to give information developers, testers and people who
will maintain the software. In other words, it should be easily understandable.
Design models should be iterative in nature. With each iteration, the design should move
towards simplicity.
Self Assessment
Fill in the blanks:
8. Analysis models represent ……………………….requirements.
9. The data that flows in and out of the system and data stores collectively are called
………………….. domain.
10. A data design simplifies program flow, design and ………………………. of software
components easier.
11. Analysis modeling focuses on three attributes of software: information to be processed,
function to be delivered and ………………………. to be exhibited.
7.5 Construction Practice
In software engineering practice, construction practice includes coding and testing tasks and
principles. Testing is a process of finding out an error. A good testing technique is one which
gives the maximum probability of finding out an error. The main objective of testers is to design
tests that uncover different classes of errors with minimum amount of effort and time.
Some testing principles include:
From a customer point of view, severe defects are one that cause failure of the program so
all the tests that are defined should meet the requirements of the customer.
Planning of tests should be done long before testing begins. When the design model is
made, test cases cab be defined at that very point. Tests can be planned before any code has
been generated.
Generally, individual components are tested first and then the focus is shifted to integrated
components and finally the entire system.
It is not possible to execute different combination of paths during testing. This means that
exhaustive testing is not possible.
In a broader software design context, we begin “in the large” by focusing on software architecture
and end “in the small” focusing on components. In testing, the focus is reversed.
7.5.1 Coding Principle
Coding principles helps you to maintain good coding practice along with concrete product
development. Coding principles also helps you write excellent quality of code with huge
difference to overall performance and scalability of your application. Following are the most
important Coding Principles which can save a lot for you when you are writing quality application
for you or your client. Ensuring these coding principles you can save development time,
management time and conquer lots of other bottlenecks which generally arise in later
LOVELY PROFESSIONAL UNIVERSITY 107