Presentation is loading. Please wait.

Presentation is loading. Please wait.

Implementation Considerations Yonglei Tao. Components of Coding Standards 2  File header  file location, version number, author, project, update history.

Similar presentations


Presentation on theme: "Implementation Considerations Yonglei Tao. Components of Coding Standards 2  File header  file location, version number, author, project, update history."— Presentation transcript:

1 Implementation Considerations Yonglei Tao

2 Components of Coding Standards 2  File header  file location, version number, author, project, update history  Description of classes  a functional description for each class including purpose, description of methods, description of fields, and in-code comments  Conventions

3 Coding Conventions 3  Naming conventions  specify rules for naming packages, modules, paths, files, classes, attributes, functions, constants, and the like.  Formatting conventions  specify formatting rules for line breaking, indentation, alignment, and spacing.  In-code comment  conventions define the requirements and guidelines for writing in-code documentation.

4 Code Review Checklist  Does the program correctly implement the functionality and conform to the design specification?  Do the implemented class interfaces conform to the interfaces specified in the design class diagrams?  Does the implementation comply to the coding standards?  Compute a number of required quality metrics and identify those that are worse than the required indicators  A metrics calculation tool is very useful  Are programming constructs used correctly and properly? 4

5 Code Review Checklist  Does the program correctly implement the algorithms and data structures?  Are there any errors or anomalies in the definition and use of variables?  Are there any incorrect uses of logical, arithmetic, or relational operators, incorrect invocation of functions, incorrect interfacing to devices, or incorrect handling of device interrupts?  Are there any potential performance bottlenecks, or inability to fulfill timing constraints? 5

6 Organizing Implementation Artifacts 6  Architectural-style organization  Classes are organized according to an architectural style.  Functional subsystem organization  Classes are organized according to the functional subsystems of the software system.  Hybrid organizations  Architectural-style functional subsystem organization  Functional subsystem architectural-style organization

7 N-Tier Architecture 7 (a) Sequence diagram showing layers of a system :Use Case GUI :Use Case Controller :Business Object:DB Mgr :Net Mgr (b) Corresponding N-Tier architecture GUI Controller Business Objects Database Connectivity Network

8 Corresponding Directory Structure 8

9

10 Copyright © The McGraw-Hill Companies, Inc. 10 Generating Code from Design  Assign classes to team members according to  dependencies between classes  to reduce number of test stubs  Implement classes  test driven development  deriving method skeleton from interaction diagrams

11 Design Class Diagram

12 Interaction Diagram 12

13 Creating Class Definitions from Design Class Diagrams 13

14 Creating Class Definitions from Design Class Diagrams 14

15 Creating Method Definitions from Interaction Diagrams

16 Defining Collection Classes 16

17 Defining Object Creation 17

18 Order of Implementation

19 Test-Driven Development  Create the skeleton code for the class to be implemented  identified from the Design Class Diagram  has all the methods, each with an empty body  Select features and write tests for features  those with high priority requirements first  Implement and test the features  detect and remove errors  improve code (known as refactoring)  add in-code documentations  Iterate until all features are implemented  Ensure test coverage 19


Download ppt "Implementation Considerations Yonglei Tao. Components of Coding Standards 2  File header  file location, version number, author, project, update history."

Similar presentations


Ads by Google