SlideShare ist ein Scribd-Unternehmen logo
1 von 3
Algorithmic

An algorithm must:
Be lucid, precise and unambiguous
Give the correct solution in all cases
Eventually end
Pseudo Code
Detailed and readable description (in structured English) of what a
computer program or algorithm must do (states the steps to the problem
solution)
Statements are written in simple English
Each instruction/step is written on a separate line
Keywords and indentation are used to signify particular control
structures
Each set of instructions is written from top to bottom, with only
one entry and one exit
Used as a detailed step in the process of developing a program. It allows
designers or lead programmers to express the design in great detail and provides
programmers a detailed template for the next step of writing code in a
specific programming language
*there are six basic computer operations
A computer can receive information
A computer can put out information
A computer can perform arithmetic
A computer can assign a value to a variable or memory location
A computer can compare two variables and select one of two alternate
actions
A computer can repeat a group of actions
Flowchart
Naming Conventions
Global data
Data that can be used by all the modules in a program
Every module in the program can access and change data
Lifetime of a global variable spans the execution of the whole program
Local data
Variable are defined within the submodule are called local variables
The scope of a local variable is simply the module in which it is defined
The lifetime of a local variable is limited to the execution of the single
sub module in which it is defined
Coding Library Modules
Purpose: To build, construct and/or develop library modules
Steps:
Create detail design for library modules
Code library modules
Review code of library modules
Fix defects of library modules
Coding Functional Modules
Purpose: To build, construct and/or develop functional modules
Steps:
Create detail design for modules and program units, if required in
design documents
Code modules and program units
Review code
Fix defects for modules and program units
Summarize and submit result to Team Lead
Integrate Software Modules
Purpose: assemble the software package from the software modules,
ensure that the software package, as integrated and functions properly
Steps:
Create integration plan (if needed)
Integrate modules
Evaluate integration results, conduct cause analysis, raise change
request (if needed)
Review and approve results of integration
Create System Description
Purpose: To develop System Description /User Manual documents that
support in software operation
Steps:
Make overview on system
Describe sub-systems and main functions including system structure
scheme, flow charts, system interfaces, data flows
Describe system requirements including support data, memory
capability, CPU and I/O requirements, storage capability, data for internal and
external interfaces
Describe software structure including library of source codes (for
system, sub-systems, objects) library of executive and supporting programs
Develop User Manual
Review and approve System Description/User Manual
Deliver & Summarize
Purpose: To deliver software package
Steps:
Review, do final inspection and summarize software products
including documents
Deliver to test team
Create coding summary report
Maintain documents, records
Coding Convention - Introduction
Be specific to each programming language
Recommend programming style, practices, and methods for each aspect
of a piece program
Common conventions may cover the following areas:
file organization,
naming conventions
indentation, white space,
comments, declarations, statements,
programming practices, principles, rules of thumb,
Etc.
Coding Convention - Importance
Code conventions are important to programmers for a number of
reasons:
80% lifetime software cost is for maintenance
People maintain the software may be changed
Following coding convention strictly helps:
Improve the readability of the software
Allowing engineers to understand new code more quickly and
thoroughly
Some Common Standards
Tab and Indent
4 spaces should be used as the unit of indentation
Tab characters should be avoided
Line Length: avoid lines longer than 80 or 120 characters
Wrapping Lines: When an expression will not fit on a single line,
break it according to below principles:
Break after a comma.
Break after a logical operator.
Break before an operator.
Prefer higher-level breaks to lower-level breaks
Comments: beginning, block, single-line, trailing, …
Number of declarations per line: same types, different types
Some Common Stand
Blank Lines improve readability by setting off sections of code that
are logically related
Two blank lines should always be used:
Between sections of a source file
Between class and interface definitions
One blank line should always be used:
Between methods
Between the local variables in a method and its first statement
Before a block or single-line comment
Between logical sections inside a method
Blank spaces should be used in the following circumstances
A keyword followed by a parenthesis should be separated by a space
A blank space should appear after commas in argument lists
All binary operators except . should be separated from their
operands by spaces
Naming Conventions
General naming rules:
Should be functionally meaningful, & indicate identifier s purpose
Use terminology applicable to the domain
Identifiers must be as short as possible (<=20 characters)
Avoid names that are similar or differ only in case
Abbreviations in names should be avoided, etc.
Use a noun or noun phrase to name a class or code module
Variables names must start with lowercase
Constants: named in uppercase letters, might have underscore
Method names must start with lowercase letter, usually use  active
verb  as the first word of method name
Instance /object names follow rules of variable names
Code Review
A thorough technical & logical line-by-line review of a code module
(program, subroutine, method, ..)
In a code review, the team would examine a sample of code and fixes
any defects in it
Codes is inspected to identify possible improvements and ensure that
business requirements are met.
For example, it could be made more readable or its performance could
be improved
Review Benefits
A different perspective
Assess and accelerate progress
Pride/reward: more pride,
Project/module familiarity
Fewer bugs and less rework,
Better team communication
Team cohesiveness
Review Candidates
A portion of the software that only one person has the expertise to
maintain
Code that implements a highly abstract or tricky algorithm
An object, library or API that is particularly difficult to work
with
Code written by someone who is inexperienced or has not written that
kind of code before, or written in an unfamiliar language
Code which employs a new programming technique
An area of the code that will be especially catastrophic if there
are defects

Weitere ähnliche Inhalte

Was ist angesagt?

Study techniques of programming in C
Study techniques of programming in CStudy techniques of programming in C
Study techniques of programming in CTushar B Kute
 
Overview of Language Processor : Fundamentals of LP , Symbol Table , Data Str...
Overview of Language Processor : Fundamentals of LP , Symbol Table , Data Str...Overview of Language Processor : Fundamentals of LP , Symbol Table , Data Str...
Overview of Language Processor : Fundamentals of LP , Symbol Table , Data Str...Bhavin Darji
 
Fundamentals of Language Processing
Fundamentals of Language ProcessingFundamentals of Language Processing
Fundamentals of Language ProcessingHemant Sharma
 
2.2. language evaluation criteria
2.2. language evaluation criteria2.2. language evaluation criteria
2.2. language evaluation criteriaannahallare_
 
Programming content
Programming contentProgramming content
Programming contentBazlin Ahmad
 
role of lexical anaysis
role of lexical anaysisrole of lexical anaysis
role of lexical anaysisSudhaa Ravi
 
Ndu06 typesof language
Ndu06 typesof languageNdu06 typesof language
Ndu06 typesof languagenicky_walters
 
Compiler vs Interpreter-Compiler design ppt.
Compiler vs Interpreter-Compiler design ppt.Compiler vs Interpreter-Compiler design ppt.
Compiler vs Interpreter-Compiler design ppt.Md Hossen
 
La5 Basicelement
La5 BasicelementLa5 Basicelement
La5 BasicelementCma Mohd
 

Was ist angesagt? (20)

Code Inspection
Code InspectionCode Inspection
Code Inspection
 
3ss
3ss3ss
3ss
 
C programming
C programmingC programming
C programming
 
Study techniques of programming in C
Study techniques of programming in CStudy techniques of programming in C
Study techniques of programming in C
 
DISE - Programming Concepts
DISE - Programming ConceptsDISE - Programming Concepts
DISE - Programming Concepts
 
Overview of Language Processor : Fundamentals of LP , Symbol Table , Data Str...
Overview of Language Processor : Fundamentals of LP , Symbol Table , Data Str...Overview of Language Processor : Fundamentals of LP , Symbol Table , Data Str...
Overview of Language Processor : Fundamentals of LP , Symbol Table , Data Str...
 
Computer
ComputerComputer
Computer
 
Fundamentals of Language Processing
Fundamentals of Language ProcessingFundamentals of Language Processing
Fundamentals of Language Processing
 
Software coding and testing
Software coding and testingSoftware coding and testing
Software coding and testing
 
11. abstraction and capsulation
11. abstraction and capsulation11. abstraction and capsulation
11. abstraction and capsulation
 
Phases of-compiler
Phases of-compilerPhases of-compiler
Phases of-compiler
 
2.2. language evaluation criteria
2.2. language evaluation criteria2.2. language evaluation criteria
2.2. language evaluation criteria
 
Programming content
Programming contentProgramming content
Programming content
 
role of lexical anaysis
role of lexical anaysisrole of lexical anaysis
role of lexical anaysis
 
Compiler design
Compiler designCompiler design
Compiler design
 
Ndu06 typesof language
Ndu06 typesof languageNdu06 typesof language
Ndu06 typesof language
 
Compiler vs Interpreter-Compiler design ppt.
Compiler vs Interpreter-Compiler design ppt.Compiler vs Interpreter-Compiler design ppt.
Compiler vs Interpreter-Compiler design ppt.
 
La5 Basicelement
La5 BasicelementLa5 Basicelement
La5 Basicelement
 
Programming Fundamentals
Programming FundamentalsProgramming Fundamentals
Programming Fundamentals
 
Training 8051Report
Training 8051ReportTraining 8051Report
Training 8051Report
 

Andere mochten auch

Paleo Diet For Athletes Recipes The Paleo Diet For Athletes Improves Athletic...
Paleo Diet For Athletes Recipes The Paleo Diet For Athletes Improves Athletic...Paleo Diet For Athletes Recipes The Paleo Diet For Athletes Improves Athletic...
Paleo Diet For Athletes Recipes The Paleo Diet For Athletes Improves Athletic...Dana Moffat
 
Question 1 use, develop or challange conventions
Question 1 use, develop or challange conventionsQuestion 1 use, develop or challange conventions
Question 1 use, develop or challange conventionsmcgeoghann
 
How profitable is the Thriller Genre?
How profitable is the Thriller Genre?How profitable is the Thriller Genre?
How profitable is the Thriller Genre?mcgeoghann
 
When were the following technologies were developed Media
When were the following technologies were developed MediaWhen were the following technologies were developed Media
When were the following technologies were developed Mediamcgeoghann
 
All You Need to Know About Diabetes Type 2
All You Need to Know About Diabetes Type 2All You Need to Know About Diabetes Type 2
All You Need to Know About Diabetes Type 2docblogger
 
Census of coastal bird-brings good news
Census of coastal bird-brings good newsCensus of coastal bird-brings good news
Census of coastal bird-brings good newsDaniela Ogden
 
Fall 2011 newsletter
Fall 2011 newsletterFall 2011 newsletter
Fall 2011 newsletterDaniela Ogden
 

Andere mochten auch (8)

Paleo Diet For Athletes Recipes The Paleo Diet For Athletes Improves Athletic...
Paleo Diet For Athletes Recipes The Paleo Diet For Athletes Improves Athletic...Paleo Diet For Athletes Recipes The Paleo Diet For Athletes Improves Athletic...
Paleo Diet For Athletes Recipes The Paleo Diet For Athletes Improves Athletic...
 
Question 1 use, develop or challange conventions
Question 1 use, develop or challange conventionsQuestion 1 use, develop or challange conventions
Question 1 use, develop or challange conventions
 
Bai day1
Bai day1Bai day1
Bai day1
 
How profitable is the Thriller Genre?
How profitable is the Thriller Genre?How profitable is the Thriller Genre?
How profitable is the Thriller Genre?
 
When were the following technologies were developed Media
When were the following technologies were developed MediaWhen were the following technologies were developed Media
When were the following technologies were developed Media
 
All You Need to Know About Diabetes Type 2
All You Need to Know About Diabetes Type 2All You Need to Know About Diabetes Type 2
All You Need to Know About Diabetes Type 2
 
Census of coastal bird-brings good news
Census of coastal bird-brings good newsCensus of coastal bird-brings good news
Census of coastal bird-brings good news
 
Fall 2011 newsletter
Fall 2011 newsletterFall 2011 newsletter
Fall 2011 newsletter
 

Ähnlich wie Abcxyz

Software development slides
Software development slidesSoftware development slides
Software development slidesiarthur
 
Best practices in enterprise applications
Best practices in enterprise applicationsBest practices in enterprise applications
Best practices in enterprise applicationsChandra Sekhar Saripaka
 
Program logic and design
Program logic and designProgram logic and design
Program logic and designChaffey College
 
Coding standards
Coding standardsCoding standards
Coding standardsMimoh Ojha
 
APIs And SDKs Breaking Into And Succeeding In A Specialty Market
APIs And SDKs  Breaking Into And Succeeding In A Specialty MarketAPIs And SDKs  Breaking Into And Succeeding In A Specialty Market
APIs And SDKs Breaking Into And Succeeding In A Specialty MarketBill Dubie
 
SWE-401 - 9. Software Implementation
SWE-401 - 9. Software ImplementationSWE-401 - 9. Software Implementation
SWE-401 - 9. Software Implementationghayour abbas
 
9. Software Implementation
9. Software Implementation9. Software Implementation
9. Software Implementationghayour abbas
 
Code Review
Code ReviewCode Review
Code ReviewRavi Raj
 
What is algorithm
What is algorithmWhat is algorithm
What is algorithmmshoaib15
 
Anti Patterns Siddhesh Lecture1 Of3
Anti Patterns Siddhesh Lecture1 Of3Anti Patterns Siddhesh Lecture1 Of3
Anti Patterns Siddhesh Lecture1 Of3Siddhesh Bhobe
 
Problem Solving Techniques
Problem Solving TechniquesProblem Solving Techniques
Problem Solving TechniquesAshesh R
 
7a Good Programming Practice.pptx
7a Good Programming Practice.pptx7a Good Programming Practice.pptx
7a Good Programming Practice.pptxDylanTilbury1
 
Maintaining Code
Maintaining CodeMaintaining Code
Maintaining CodeKelly Bauer
 
Compiler Construction introduction
Compiler Construction introductionCompiler Construction introduction
Compiler Construction introductionRana Ehtisham Ul Haq
 

Ähnlich wie Abcxyz (20)

Software development slides
Software development slidesSoftware development slides
Software development slides
 
Best practices in enterprise applications
Best practices in enterprise applicationsBest practices in enterprise applications
Best practices in enterprise applications
 
Unit iv
Unit ivUnit iv
Unit iv
 
Program logic and design
Program logic and designProgram logic and design
Program logic and design
 
Coding standards
Coding standardsCoding standards
Coding standards
 
APIs And SDKs Breaking Into And Succeeding In A Specialty Market
APIs And SDKs  Breaking Into And Succeeding In A Specialty MarketAPIs And SDKs  Breaking Into And Succeeding In A Specialty Market
APIs And SDKs Breaking Into And Succeeding In A Specialty Market
 
Sd Revision
Sd RevisionSd Revision
Sd Revision
 
SWE-401 - 9. Software Implementation
SWE-401 - 9. Software ImplementationSWE-401 - 9. Software Implementation
SWE-401 - 9. Software Implementation
 
9. Software Implementation
9. Software Implementation9. Software Implementation
9. Software Implementation
 
Code Review
Code ReviewCode Review
Code Review
 
Code review
Code reviewCode review
Code review
 
Year 12 D Course Material
Year 12 D  Course MaterialYear 12 D  Course Material
Year 12 D Course Material
 
What is algorithm
What is algorithmWhat is algorithm
What is algorithm
 
cheatsheet.pdf
cheatsheet.pdfcheatsheet.pdf
cheatsheet.pdf
 
Anti Patterns Siddhesh Lecture1 Of3
Anti Patterns Siddhesh Lecture1 Of3Anti Patterns Siddhesh Lecture1 Of3
Anti Patterns Siddhesh Lecture1 Of3
 
Problem Solving Techniques
Problem Solving TechniquesProblem Solving Techniques
Problem Solving Techniques
 
7a Good Programming Practice.pptx
7a Good Programming Practice.pptx7a Good Programming Practice.pptx
7a Good Programming Practice.pptx
 
Maintaining Code
Maintaining CodeMaintaining Code
Maintaining Code
 
Compiler Construction introduction
Compiler Construction introductionCompiler Construction introduction
Compiler Construction introduction
 
Ch05
Ch05Ch05
Ch05
 

Mehr von vacbalolenvadi90 (6)

Java day9n
Java day9nJava day9n
Java day9n
 
Quiz test JDBC
Quiz test JDBCQuiz test JDBC
Quiz test JDBC
 
Ass2 1 (2)
Ass2 1 (2)Ass2 1 (2)
Ass2 1 (2)
 
Final
FinalFinal
Final
 
sqlKey
sqlKeysqlKey
sqlKey
 
SQL DdaHKH Huế
SQL DdaHKH HuếSQL DdaHKH Huế
SQL DdaHKH Huế
 

Kürzlich hochgeladen

Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 

Kürzlich hochgeladen (20)

Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 

Abcxyz

  • 1. Algorithmic An algorithm must: Be lucid, precise and unambiguous Give the correct solution in all cases Eventually end Pseudo Code Detailed and readable description (in structured English) of what a computer program or algorithm must do (states the steps to the problem solution) Statements are written in simple English Each instruction/step is written on a separate line Keywords and indentation are used to signify particular control structures Each set of instructions is written from top to bottom, with only one entry and one exit Used as a detailed step in the process of developing a program. It allows designers or lead programmers to express the design in great detail and provides programmers a detailed template for the next step of writing code in a specific programming language *there are six basic computer operations A computer can receive information A computer can put out information A computer can perform arithmetic A computer can assign a value to a variable or memory location A computer can compare two variables and select one of two alternate actions A computer can repeat a group of actions Flowchart Naming Conventions Global data Data that can be used by all the modules in a program Every module in the program can access and change data Lifetime of a global variable spans the execution of the whole program Local data Variable are defined within the submodule are called local variables The scope of a local variable is simply the module in which it is defined The lifetime of a local variable is limited to the execution of the single sub module in which it is defined Coding Library Modules Purpose: To build, construct and/or develop library modules Steps: Create detail design for library modules Code library modules Review code of library modules Fix defects of library modules Coding Functional Modules Purpose: To build, construct and/or develop functional modules Steps: Create detail design for modules and program units, if required in design documents Code modules and program units Review code Fix defects for modules and program units Summarize and submit result to Team Lead Integrate Software Modules Purpose: assemble the software package from the software modules, ensure that the software package, as integrated and functions properly Steps: Create integration plan (if needed) Integrate modules Evaluate integration results, conduct cause analysis, raise change request (if needed)
  • 2. Review and approve results of integration Create System Description Purpose: To develop System Description /User Manual documents that support in software operation Steps: Make overview on system Describe sub-systems and main functions including system structure scheme, flow charts, system interfaces, data flows Describe system requirements including support data, memory capability, CPU and I/O requirements, storage capability, data for internal and external interfaces Describe software structure including library of source codes (for system, sub-systems, objects) library of executive and supporting programs Develop User Manual Review and approve System Description/User Manual Deliver & Summarize Purpose: To deliver software package Steps: Review, do final inspection and summarize software products including documents Deliver to test team Create coding summary report Maintain documents, records Coding Convention - Introduction Be specific to each programming language Recommend programming style, practices, and methods for each aspect of a piece program Common conventions may cover the following areas: file organization, naming conventions indentation, white space, comments, declarations, statements, programming practices, principles, rules of thumb, Etc. Coding Convention - Importance Code conventions are important to programmers for a number of reasons: 80% lifetime software cost is for maintenance People maintain the software may be changed Following coding convention strictly helps: Improve the readability of the software Allowing engineers to understand new code more quickly and thoroughly Some Common Standards Tab and Indent 4 spaces should be used as the unit of indentation Tab characters should be avoided Line Length: avoid lines longer than 80 or 120 characters Wrapping Lines: When an expression will not fit on a single line, break it according to below principles: Break after a comma. Break after a logical operator. Break before an operator. Prefer higher-level breaks to lower-level breaks Comments: beginning, block, single-line, trailing, … Number of declarations per line: same types, different types Some Common Stand Blank Lines improve readability by setting off sections of code that are logically related Two blank lines should always be used: Between sections of a source file Between class and interface definitions One blank line should always be used: Between methods
  • 3. Between the local variables in a method and its first statement Before a block or single-line comment Between logical sections inside a method Blank spaces should be used in the following circumstances A keyword followed by a parenthesis should be separated by a space A blank space should appear after commas in argument lists All binary operators except . should be separated from their operands by spaces Naming Conventions General naming rules: Should be functionally meaningful, & indicate identifier s purpose Use terminology applicable to the domain Identifiers must be as short as possible (<=20 characters) Avoid names that are similar or differ only in case Abbreviations in names should be avoided, etc. Use a noun or noun phrase to name a class or code module Variables names must start with lowercase Constants: named in uppercase letters, might have underscore Method names must start with lowercase letter, usually use  active verb  as the first word of method name Instance /object names follow rules of variable names Code Review A thorough technical & logical line-by-line review of a code module (program, subroutine, method, ..) In a code review, the team would examine a sample of code and fixes any defects in it Codes is inspected to identify possible improvements and ensure that business requirements are met. For example, it could be made more readable or its performance could be improved Review Benefits A different perspective Assess and accelerate progress Pride/reward: more pride, Project/module familiarity Fewer bugs and less rework, Better team communication Team cohesiveness Review Candidates A portion of the software that only one person has the expertise to maintain Code that implements a highly abstract or tricky algorithm An object, library or API that is particularly difficult to work with Code written by someone who is inexperienced or has not written that kind of code before, or written in an unfamiliar language Code which employs a new programming technique An area of the code that will be especially catastrophic if there are defects