1 Software Construction Software Construction Chapter 1.
-
Upload
ginger-thomas -
Category
Documents
-
view
216 -
download
0
Transcript of 1 Software Construction Software Construction Chapter 1.
11
Software Construction Software Construction
Chapter 1Chapter 1
22
Software Development ActivitiesSoftware Development Activities Problem DefinitionProblem Definition Requirements DevelopmentRequirements Development Construction PlanningConstruction Planning Software Architecture (high-level design)Software Architecture (high-level design) Detailed DesignDetailed Design Coding and DebuggingCoding and Debugging Unit TestingUnit Testing Integration TestingIntegration Testing System TestingSystem Testing MaintenanceMaintenance
33
Software ConstructionSoftware Construction
Coding and Debugging part of software developmentCoding and Debugging part of software development Also involves detailed design, Construction Planning, Also involves detailed design, Construction Planning,
unit testing and integration testingunit testing and integration testing Known also as Coding or ProgrammingKnown also as Coding or Programming Consumes around 65% of small project time and 50% Consumes around 65% of small project time and 50%
of medium size timeof medium size time 50%-75% of project errors50%-75% of project errors Cost less to fix than analysis or design errorsCost less to fix than analysis or design errors
44
55
Specific tasks involved in construction:Specific tasks involved in construction:
Verifying the software Development processVerifying the software Development process Determining how code will be testedDetermining how code will be tested Designing and writing classes and routines Designing and writing classes and routines
(functions)(functions) Creating and naming variables and named Creating and naming variables and named
constantsconstants Selecting control structures and organizing Selecting control structures and organizing
blocks of statementsblocks of statements
66
Specific tasks involved in construction: Specific tasks involved in construction: Continue…Continue…
Unit testing, integration testing, and debugging Unit testing, integration testing, and debugging codecode
Reviewing other team members' low-level Reviewing other team members' low-level designs and code and having them review designs and code and having them review yoursyours
Formatting and commenting codeFormatting and commenting code Integrating software components that were Integrating software components that were
created separatelycreated separately Tuning code to make it faster and use fewer Tuning code to make it faster and use fewer
resourcesresources
77
Importance of Software ConstructionImportance of Software Construction
Take large part of software development Take large part of software development processprocess
Efficient programming techniques produce Efficient programming techniques produce better quality softwarebetter quality software
Source code describe, represents and Source code describe, represents and documents software, while other artifacts documents software, while other artifacts might be out of datemight be out of date
Construction cannot be dropped.Construction cannot be dropped.