recap on sdlc phases & artefacts - comp.utm.my · recap on sdlc phases & artefacts ... •...

19
4/29/13 1 Prepared by Shahliza Abd Halim Recap on SDLC Phases & Artefacts Domain Analysis @ Business Process Requirement Analysis Design Implementation Testing & Deployment Maintenance & Evolution Domain Model (Class Diagram) 1) Functional & Non-Functional requirement 2) Use Case diagram 1) System Sequence Diagram 2) Activity Diagram 1) Class Diagram (refined) 2) Detail Sequence Diagram 3) State Diagram 1) Application Source Code 2) User Manual Documentation 1) Test Cases 2) Prototype 1) Change Request Form SRS

Upload: hoangthuy

Post on 02-Apr-2018

216 views

Category:

Documents


2 download

TRANSCRIPT

4/29/13

1

PreparedbyShahlizaAbdHalim

RecaponSDLCPhases&ArtefactsDomain Analysis

@ Business Process

Requirement

Analysis

Design

Implementation

Testing & Deployment

Maintenance & Evolution

Domain Model (Class Diagram)

1) Functional & Non-Functional requirement 2) Use Case diagram

1) System Sequence Diagram 2) Activity Diagram

1) Class Diagram (refined) 2) Detail Sequence Diagram 3) State Diagram

1) Application Source Code 2) User Manual Documentation

1) Test Cases 2) Prototype

1) Change Request Form

SRS

4/29/13

2

Domain Analysis

Requirement

Analysis

Early Design : Architectural Design

Detailed Design

Domain Model 1) Class Diagram

Requirement Models 1) Functional & Non-Functional requirement 2) Use Case diagram

Analysis Models 1) System Sequence Diagram 2) Activity Diagram

Architectural Models 1) Package Diagram (Subsystem)

Design Models 1) Class Diagram (refined) 2) Sequence Diagram (refined) 3) State Diagram

SRS

SDD

4/29/13

3

WWSdescrip>on(pg.180Sommerville)

•  To help weather climate change and to improveaccuracy of weather forecast in remote areas;whichseveralhundredsweathersta>onaredeployintheiden>fiedareas.

•  AWildernessWeather Sta>on (WWS) is a packageof soOware controlled instrumentswhich collectsdata,performssomedataprocessingandtransmitsthis data for further processing. The instrumentsinclude air and ground thermometers, ananemometer,awindvane,abarometerandaraingauge.Dataiscollectedperiodically.

5

WWSdescrip>on

•  When a command is issued to transmit theweather data, theweather sta>onprocesses andsummarises the collected data. The summariseddataistransmiRedtothemappingcomputerwhenarequestisreceived.

4/29/13

4

STAGE:DOMAINANALYSIS(BUSINESSENVIRONMENT&PROCESS)

SystemcontextfortheWWSS

8

4/29/13

5

STAGE:REQUIREMENT

WWSSUserRequirements

4/29/13

6

WWSSUseCaseDiagram

11

Usecasedescrip>on—ReportStatusscenario

System WeatherstaQon

Usecase ReportStatus

Actors WeatherOperator

Descrip>on 1.Theweatheroperatorsendsasummaryoftheweatherdatathathasbeencollectedfromtheinstrumentsinthecollec>onperiodtotheweatherinforma>onsystem.2.  Thedatasenttothemaximum,minimum,andaveragegroundandair

temperatures;3.  Thedatasenttothebarometerarethemaximum,minimum,andaverage

airpressures;themaximum,minimum,andaveragewindspeeds;thetotalrainfall;andthewinddirec>onassampledatfive‐minuteintervals.

12

4/29/13

7

STAGE:ANALYSIS

Sequencediagramdescribingdatacollec>on

14

4/29/13

8

STAGE:EARLYDESIGN(ARCHITECTURALDESIGN)

Recap

•  Architecturaldesign:– Thedesignprocessfor idenQfyingthesub‐systemsmaking up a system andtheframeworkforsub‐systemcontrolandcommunicaQon.

•  It involves idenQfying major systemcomponentsandtheircommunicaQons.

•  RepresentsthelinkbetweenspecificaQonanddesignprocesses.–  Linkcanbeexplicitlydescribedbyhaving

traceability

4/29/13

9

RecaponArchitecturalDesignClassifica>on

ArchitecturalDesign

SystemOrganisa/on(Style/

Pa5ern)

RepositoryModel

Client‐ServerModel

Layered(Tiers)Model

Pipe&Filter

Model‐View‐ControllerControlStyle

Model

Centralised

Call‐Return

Manager

Event‐Driven Broadcast

Interrupt‐Driven

ModularComposi/on

Object‐Oriented

Func>on‐Oriented

Architecturaldesigndecisions(9QUESTIONS)

1.  Whatapproachwillbeusedtostructurethesystem?(4+1views)2.  Whatarchitecturalstylesareappropriate?(5basicstyles/paRerns:

Repository,Client‐Server,Layered,Pipe&Filter,MVC)3.  Whatcontrolstrategyshouldbeused?(Centralisedvs.Event‐driven)4.  Howwillthestructuralcomponentsbedecomposedinto

subcomponents?(Object‐orientedvs.Func>onal‐oriented/structured)5.  IsthereagenericapplicaQonarchitecturethatcanbeused?

(Data|Transac>on|Event|LanguageProcessingapplica>on)6.  Whatarchitecturalorganiza>onisbestfordeliveringthenonfuncQonal

requirements?(Performance|Security|Safety|Availability|Maintainability)

7.  Howwillthesystembedistributed?(visualiseinDeploymentdiagram)8.  Howwillthearchitecturaldesignbeevaluated?(ATAMmethod)9.  Howshouldthearchitecturebedocumented?(SoOwareDesign

Document‐SDD)

18

4/29/13

10

Architecturaldesigndecision–architecturalstyle

Packagediagram

•  Showshowthedesignisorganisedintologicallyrelatedgroupsofobjects.

•  IntheUML,theseareshownusingpackages‐anencapsula>onconstruct.Thisisalogicalmodel.Theactualorganisa>onofobjectsinthesystemmaybedifferent.

•  Inthiscasestudy,packagesisusedtologicallyorganisedlayers,packagesinlayersandclassdiagramineachpackages.

4/29/13

11

Layeredarchitecture–3layersforWWSSwithdependencyrela>onships

DependencyRela>onships

GuidelinetoDetermineClassesSuitableforLayersandPackages

A)  FromObjectClassIden>fica>on

B)  FromSequenceDiagram‐<<boundary>>,<<control>>and<<en>ty>>classes

4/29/13

12

A)FromObject‐ClassIden>fica>on•  Useagramma>calapproachbasedonanatural

languagedescrip>onofthesystem(usedinOODmethod).–  ObjectsandaRributesarenouns;opera>onsandservices

areverbs•  Basetheiden>fica>onontangiblethingsinthe

applica>ondomain.–  AircraO,roles(mangers,doctors),events(request,

response),loca>ons(offices),organiza>ons(UTM,FSKSM).

•  Useabehaviouralapproachandiden>fyobjectsbasedonwhatpar>cipatesinwhatbehaviour.

•  Useascenario‐basedanalysis.Theobjects,aRributesandmethodsineachscenarioareiden>fied.

ExampleObject–ClassIden>fica>onforWWSS

•  Objectclassiden>fica>onintheweathersta>onsystemmaybebasedonthetangiblehardwareanddatainthesystem:1.  Groundthermometer,Anemometer,Barometer

•  Applica>ondomainobjectsthatare‘hardware’objectsrelatedtotheinstrumentsinthesystem.

2.  WeatherstaQon•  Thebasicinterfaceoftheweathersta>ontoitsenvironment.Itthereforereflectstheinterac>onsiden>fiedintheuse‐casemodel.

3.  Weatherdata•  Encapsulatesthesummarizeddatafromtheinstruments.

4/29/13

13

B)FromSequenceDiagram‐<<boundary>>,<<control>>and<<en>>y>>classes

PresentaQonLayer•  Boundaryandcontrolclassesisrecommendedtobeintheapplica>on

layer•  youcangrouptheclassesintoasuitablepackages–i.ebasedonyouruse

caseetc.

BusinessLogicLayer•  En>tyclassesisrecommendedtobeinthebusinessservicelayer(control

classwithheavyprocessingetcisalsorecommendedinthislayer•  Youcangrouptheclassesintoasuitablepackages

Middlewarelayer•  Containscomponents,subsystemsorclasseswhichareusedfor

connec>ngtoexternalsystem,databases,orhardware.•  Recommendedforlibrariesyouusetoconnectbetweendatabaseand

alsoyourapplica>on.Canbeanylibrariesyouusedi.ejavadevelopmentkitlibraryetc.

LayeredArchitectureStyle,PackageandClassesforWWSS

Layer

Packages:i.eData

DisplayandDataCollec>on

ClassesinData

Collec>onPackage

4/29/13

14

STAGE:DETAILEDDESIGNCLASSDIAGRAMRELATIONSHIPS,ATTRIBUTESANDOPERATIONSSTATEDIAGRAM

GuidelineforClassDiagramDetailDesign

A)  DetermineClassDiagramRela>onshipsandOpera>onsusingSequenceDiagram

B)  DetermineClassesARributesandopera>onsfromyourownunderstanding

4/29/13

15

A)DetermineClassDiagramRela>onshipsandOpera>onsusingSequenceDiagram

•  Rela>onshipsareiden>fiedbyexamininginterac>ondiagrams–  Iftwoobjectsmust“talk”theremustbeassocia>onrela>onshipsbetweentheclasses

–  Opera>onaddStudent(String)isopera>onforCourseClass

Registra>onManager

Math101:Course

3:addstudent(joe)

addStudent(String)

ClassDiagramforPresenta>onLayer

4/29/13

16

B)DetermineClassesARributesandopera>onsfromyourownunderstanding

ClassesaRributesandopera>onsforWeatherInstrumentPackage

GuidelineforStateDiagram

•  Noteveryclassneedsastatediagram•  OOen:Statediagramnotverycomplexexceptfor

certainapplica>onsi.e.real‐>mesystems•  StatediagramsareoOenusedforUIandcontrol

objects

32

AsanexampleWeatherSta>on

suitableforState

Diagram

4/29/13

17

Weathersta>onstatediagram

WeatherStaQonclass

WeatherStaQonstatediagram

TRACEBILITYBETWEENUSERREQUIREMENTS,USECASEANDDESIGN

4/29/13

18

Traceability

•  Whenyoubuildormodelasystem,youstartatawithrequirementsandliRledetail.Then,youproceedtoalowerlevelofabstrac>on;forexample,toadesignwithmoredetail.

•  Viewingthesystemfromdifferentlevelsofabstrac>oncanhelpstakeholderssuchasprojectmanagers,developers,andtestersbeRerunderstandhowthesystemworks.

•  Youcantraceanelementineitheraforwardorbackwarddirec>on.

BackwardTraceabilitybetweenuserrequirements;usecaseandArchitectureDesignforWWSS

Userrequirements Usecase ArchitectureDesign

4/29/13

19

Traceabilitytable

Requirement Source / ID Use Case Realization Design Reference

Requirement Source / ID

The Unique Requirement ID / System Requirement Statement where the requirement is referenced in the Software Requirement Specification Document

Use case realization Describe which use case related to the user requirements

Design Reference Specify subsystem which can be traced back to the use case

TraceabilityTable

RequirementsIDD UseCaseRealizaQon DesignReference

REQ11

RetrieveWeatherReport DataCollec>onREQ12

REQ13

REQ024 ManageDataArchive DataArchiving

REQ031 Restart,Shutdown,Powersave,

RemoteControl,ReconfigureInstuments

HardwareInterface

… Reportstatus DataDisplay

…. …. …..