I made this widget at MyFlashFetish.com.

Monday, July 25, 2011

Module 5

Software Implementation / Coding

~ ‘Construction’ refers to the hands-on part of creating something.
~ Also known as implementation / coding and debugging & verification and validation (testing).
Generally focus at coding, debugging, some detailed design and some testing (esp. unit testing).
~ Construction may involves:

*  Verifying that the groundwork has been laid so that construction can proceed successfully.
*  Designing and writing routines and module.
*  Selecting and creating data types and naming identifiers.
*  Selecting control structures and organizing blog of statement.
*  Finding fixing error.
*  Reviewing other team members design and code and having them review yours.
*  Polishing code - formatting and writing comment.
*  Intergrating software component.
*  Turning code - make more efficient, smaller and faster.
Coding Principles
*  Understand of the problem you're trying to solve.
*  Understand a basic design principles and concepts.
*  Pick a programming language that meets the needs of the software to build and environment in 
    which it will operate.
*  Select a programming environment that provide tools that will make your work easier.
*  Create a set of unit test that will be applied once the component you code is complete.
Good Programming Practice
*  Be consistent with formatting.
*  Be consistent with naming conventions.
*  Use global [identifier] sparingly.
*  Dont't assume output format.
*  Add comment to your code - explain what and why.
*  Provide useful error message.
*  Recover (or fail) gracefully.
*  Push interface up and implementation down.
*  know what u don't know - prepare for changes.

Source: http://relisoft.com/practice.html

Software Inspection
*  An old school approach.
*  A process to review, analyze and check static system representations such as  requirements 
    document, design document, and program source code to look for errors and problems
*  Static - need not run the software on a computer.
*  Generally, focus at source code.
*  Known as peer reviews or program / code inspection.

Software Reuse.
*  In engineering disciplines, system are designed by composing existing component that have been 
    used in other system.
*  SE more focus on original development but it is now recognized that to achieve a better software.
Reuse - Based Software Engineering.
*  Application system reuse - application system may reuse either by incorporating without change in
    into other systems or by developing application families.
*  Component reuse - component of an application from sub-system to a single objects maybe reused.
*  Object and function reuse - software component that implement a single well defined function may
    be reused.
Requirements for Reuse.
*  It must be possible to find appropriate reuseable components.
*  The reuser of the components will be reliable and will behave as specified.
*  The component must be documented so that they can be understood and where appropriate, 
Benefit of Reuse
*  Increase dependability
*  Reduce process risk.
*  Effective use of specialists.
*  Standard compliance
*  Accelerated development.
Reuse Development.
*  Increased costs.
*  Lack of case tool support.
*  Not - invented - here syndrome
*  Maintaining a component library can be expensive.
*  finding and adapting reusable components.



No comments:

Post a Comment

Facebook Comments

Our Countries :))

free counters