Software structures


Published on

1 Comment
  • i will supply u with marked work for M1 and D1 in exchange for a written answer for P5
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Software structures

  1. 1. Software StructuresUnit 06: Software Design and Development 1
  2. 2. Assignment 2P5: Explain where software design andstructures fit into the SDLCM1: Explain the importance of creatingprogram code which is of high quality.Describe how the code quality can beimprovedD1: Discuss ways in which a programmercan make codes easier to read 2
  3. 3. Software StructuresThe structure of a program depends on thetype of language usedProcedural languages split the system intoprocedures and functionsObject-orientated (OO) languages are basedon objects and classesPrograms are built from combining thesetechniques in various patterns and quantities 3
  4. 4. Basic StructuresSequence: Any collection of code statementsthat are performed one after the otherSelection: A decision or conditionalstatement whose result lets the programexecute one set of code statements or another.These form the program’s logical pathways.Iteration (Loops): A block of statements thatare repeated based on some conditionalstatement evaluating to true. 4
  5. 5. Procedural StructuresModules: A term used to describe differentparts of a program. These may includegroups of functions and proceduresProcedures: Perform re-usable actionsFunctions: Generally used for calculationsas they return value – reusablePre-defined code: Built-in functions or acompiled module which can be inserted intothe solution 5
  6. 6. OO StructuresClasses: A program building block whichprovides a template for the creation of objects. A class contains both data and functions that describe a real-world thingObjects: A concrete instance of a class,complete with its own personal data. Represent either physical or conceptual things (e.g. customers, books, loans)Data Abstraction: The object’s users knownothing about how the data is manipulatedinside the object 6
  7. 7. Quality of CodeReliable and Robust: Thorough testingensures programs work properly and cancope with being used incorrectlyUsability: The best programs are easy to useand intuitive. Clearly labelled and logicallyarranged controls make it easier for the userEfficiency: The code calculates results andperforms operations as quickly as possible 7
  8. 8. Quality of CodePortability: The ability of a program to runon different hardware or software platformswith minimal modificationMaintainability: Every product needs tobe maintained with updates, bug fixes andnew features, to make this easier: Good detailed technical documentation describing the design and implementation Well-written programs inc. Comments, meaningful variable names and indenting 8
  9. 9. Achieving Higher CriteriaM1: Cover all quality issues – explainingwhy they may be important in a particulardevelopment projectD1: You need to discuss the readability ofcode and the factors that affect it, inc.Benefits and drawbacks of each techniqueused. Give examples of actual code andexplain what problems may arise if thetechnique is not used 9