análise de sistemas (as) - departamento de informáticangarcia/aulas/asi1213/ubi asi 1213 aula...

Post on 18-Nov-2018

213 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

AnálisedeSistemas(AS)

AnoLecDvo2012/2013*1ºSemestre

CursodeLicenciaturaemTecnologiaseSistemasdeInformação

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

Aula3

1

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

Previously...

Contentadaptedfrom

SystemsAnalysisandDesignwithUML,4thEdiDonInternaDonalStudentVersion

AlanDennis,BarbaraHaleyWixomandDavidTegarden,

Wiley,2012

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

2

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

3

SystemsDevelopmentLifeCycle(SDLC)

Planning

Analysis

Design

ImplementaDon

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

4

SystemsDevelopmentLifeCycle(SDLC)

Theprocessconsistsoffourphases

Eachphaseconsistsofaseriesofsteps

Eachphaseisdocumented(deliverables)

PhasesareexecutedsequenDally,incrementally,iteraDvelyorinsomeotherpa`ern

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

5

QuesDonstobeAnsweredPlanningphase

Whyshouldwebuildthissystem?

Whatvaluedoesitprovide?

Howlongwillittaketobuild?

AnalysisphaseWhowilluseit?

Whatshouldthesystemdoforus?

Where&whenwillitbeused?

DesignphaseHowshouldwebuildit?

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

6

SDLC:ThePlanningPhaseProjectIniDaDon

Develop/receiveasystemrequestConductafeasibilityanalysis

•  Technicalfeasibility•  Economicfeasibility•  OrganizaDonalfeasibility

ProjectManagement(aherapproval)Developtheworkplanandproduceaprojectplan

Stafftheproject

Monitor&controltheproject

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

7

SDLC:TheAnalysisPhaseDevelopananalysisstrategy

Modelthecurrentsystem

Formulatethenewsystem

GathertherequirementsDevelopasystemconcept

Createabusinessmodeltorepresent:•  Businessdata

•  Businessprocesses

Developasystemproposal

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

8

SDLC:TheDesignPhase

Developadesignstrategyandproduceasystemspecifica>on

Designarchitecture(sw,hw,network)andinterfaces(userinterfaces,menus)

DevelopdatabasesandfilespecificaDons

Developtheprogramdesigntospecify:Whatprogramstowrite

Whateachprogramwilldo

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

9

SDLC:TheImplementaDonPhase

ConstructthesystemBuildit(writetheprogrammingcode)

Testit

InstallsystemTraintheusers

Supportthesystem(maintenance)

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

10

SDLC:MethodologiesMethodology:aformalizedapproachto

implemenDngtheSDLCFormalstandardsusedbygovernmentagencies;internally

developedbycompanies;developedandsoldasaproduct,…

Categories(Business)ProcessorientedDatacenteredObject‐orientedStructuredRapidacDondevelopmentAgiledevelopment

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

11

ClassesofMethodologiesStructuredDevelopment(~1980)

WaterfallDevelopment(detailed,butlengthy)ParallelDevelopment(faster,butwithincreasedintegraDonefforts)

RapidApplicaDonDevelopment(~1990)(hardtomanageuserexpectaDons‐>growing#requirements)

PhasedPrototyping

AgileDevelopment(sDllunderdevelopment!Programming‐centric,modelinganddocumentaDonoverheadsareeliminated)

eXtremeProgrammingSCRUM

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

12

TheSystemsAnalyst:SkillsAgentsofchange

IdenDfywaystoimprovetheorganizaDon

MoDvate&trainothers

Skillsneeded:Technical:mustunderstandthetechnology

Business:mustknowthebusinessprocesses

AnalyDcal:mustbeabletosolveproblems

CommunicaDons:technical&non‐technicalaudiences

Interpersonal:leadership&management

Ethics:dealfairlyandprotectconfidenDalinformaDon

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

13

AnExpensiveFalseStartA real‐estate group in the federal government cosponsored a data wharehouse with the ITdepartment.Aformalproposalwaswri`enbyITinwhichcostswereesDmatedat$800,000,theproject duraDon was esDmated to be eight months, and the responsibility for funding wasdefinedasthebusinessunit’s.

The IT department proceeded with the project before it even knew if th project had beenaccepted.

Theprojectactuallylastedtwoyearsbecauserequirementsgatheringtookninemonthsinsteadofoneandahalf,theplanneduserbasegrewfrom200to2,500,andtheapprovalprocesstobuytechnology for the project took a year. Threeweeks prior to technical delivery, the IT directorcanceledtheproject.ThisfailedendeavorcosttheorganizaDonandtaxpayers$2.5million.

a)  Whydidthissystemfail?b)  Whywouldacompanyspendmoneyand>meonaproject

andthencancelit?c)  Whatcouldhavebeendonetopreventthis?

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

IntroducDonto

Object‐OrientedSystemsAnalysisandDesign

withUML

Contentadaptedfrom

SystemsAnalysisandDesignwithUML,4thEdiDonInternaDonalStudentVersion

AlanDennis,BarbaraHaleyWixomandDavidTegarden,

Wiley,2012

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

14

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

CharacterisDcsofObject‐OrientedSystems

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

15

Classes&Objects

Object(instance):instanDaDonofaclass

A`ributes:informaDonthatdescribestheclass(Dpicallyprivate)

State:describesitsvaluesandrelaDonshipsatapointinDme

aStudent:Student

‐ Maria‐ 5thAvenue‐ 333333‐ {AS,BD,SO}

Student

‐Name‐Address‐ID‐CourseList

‐name()‐addCourse(Course)

InstanDaDon

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

CharacterisDcsofObject‐OrientedSystems

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

16

Methods&MessagesMethods:thebehaviorofaclass

Messages:informaDonsenttoanobjecttotriggeramethod(procedurecall)

aStudent:Student

‐ Maria‐ 5thAvenue‐ 333333‐ {AS,BD,SO}

AddSItocourselist

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

CharacterisDcsofObject‐OrientedSystems

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

17

EncapsulaDon&informaDonhidingEncapsulaDon:combinaDonofprocess&data

InformaDonhiding:funcDonalityishidden

aStudent:Student

‐ Maria‐ 5thAvenue‐ 333333‐ {AS,BD,SO}

AddSItocourselist

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

CharacterisDcsofObject‐OrientedSystems

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

18

InheritanceGeneralclassesarecreated(superclasses)Subclassescaninheritdataandmethodsfromasuperclass

Person

StudentTeacher

Regular Erasmus

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

CharacterisDcsofObject‐OrientedSystems

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

19

Polymorphism&dynamicbindingPolymorphism:thesamemessagecanhavedifferentmeanings

Dynamicbinding:typeofobjectisnotdeterminedunDlrun‐Dme

ContrastwithstaDcbinding

AddSItocourselist

Teacher

Student

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

Object‐OrientedSystemsAnalysis&Design

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

20

A`emptstobalancedataandprocess

UDlizestheUnifiedModelingLanguage(UML)

CharacterisDcsofOOAD:Use‐caseDriven

ArchitectureCentricIteraDveandIncremental

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

Object‐OrientedSystemsAnalysis&Design

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

21

Usecases:describehowusersinteractwiththesystemtoperformsome

acDvity(placinganorder,makingareservaDon,…)

Use‐casedrivenUse‐casesdefinethebehaviorofasystem

Eachuse‐casefocusesononebusinessprocess(simplicity)

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

Object‐OrientedSystemsAnalysis&Design

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

22

Architecturecentric

FuncDonal(external)view:focusesontheuser’sperspecDve

StaDc(structural)view:focusesona`ributes,methods,classes&relaDonships

Dynamic(behavioral)view:focusesonmessagesbetweenclassesandresulDngbehaviors

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

Object‐OrientedSystemsAnalysis&Design

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

23

IteraDve&incremental

UndergoesconDnuoustesDng&refinement

Theanalystunderstandsthesystembe`eroverDme

EachiteraDonbringsthesystemclosertorealuserneeds

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

BenefitsofObject‐OrientedSystemsAnalysis&Design

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

24

Breakacomplexsystemintosmaller,moremanageablemodules

WorkonmodulesindividuallyandeasilypiecethemodulesbacktogethertofromandIS

SeethesystemmorerealisDcally—astheusersdo

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.ptJoãoPauloFernandes,jpf@di.ubi.pt

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca

Concept Supports Leadsto

Classes,objects,methodsandmessages

‐ AmorerealisDcwayforpeopletothinkabouttheirbusiness‐ Highlycohesiveunitsthatcontainbothdataandprocesses

‐ Be`ercomunicaDonbetweenuserandanalyst‐ Reusableobjects

EncapsulaDonandinformaDonhiding

Looselycoupledunits ‐ Reusableobjects‐ Fewerrippleeffectsfromchangeswithinanobjectorthesystemitself

Inheritance Allowsustouseclassesandstandardtemplatesfromwhichotherclassescanbuild

‐ Lessredundancy‐ FastercreaDonofnewclasses‐ Standardsandconsistencywithinandacrossdevelopmentefforts

PolymorphismandDynamicBinding

Minimalmessagingthatisinterpretedbyobjectsthemselves

‐Simplerprogrammingofevents‐Easeinreplacingorchangingobjectsinasystem‐Fewerrippleeffectsfromchangeswithinanobjectorthesystemitself

Use‐casedrivenandusecases

AllowsusersandanalyststofocusonhowauserwillinteractwiththesystemtoperformasingleacDvity

‐Be`erunderstandingandgatheringofuserneeds‐Be`ercomunicaDonbetweenuserandanalyst

ArchitecturecentricandfuncDonal,staDc,anddynamicviews

ViewingtheevolvingsystemfrommulDplepointsofview

‐Be`erunderstandingandmodelingofuserneeds‐MorecompletedepicDonofinformaDonsystem

IteraDveand ConDnuoustesDngandrefinementof ‐MeeDngrealneedsofusers

25

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

Object‐OrientedSystemsAnalysis&DesignwithUML

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

26

UMLprovidesacommonvocabularyofobject‐orientedtermsanddiagrammingtechniquesrich

enoughtomodelanysystemsdevelopmentprojectfromanalysisthroughimplementaDon

Version2.0has14diagramsin2majorgroups:–  Structurediagrams–  Behaviordiagrams

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

Object‐OrientedSystemsAnalysis&DesignwithUML

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

27

UMLstructurediagrams

RepresentthedataandstaDcrelaDonshipsinaninformaDonsystem

ClassObjectPackageDeploymentComponentCompositestructure

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

Object‐OrientedSystemsAnalysis&DesignwithUML

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

28

UMLBehaviorDiagrams

DepictthedynamicrelaDonshipsamongtheinstancesorobjectsthatrepresentthebusinessinformaDonsystem

AcDvity

Sequence

CommunicaDon

InteracDonoverview

Timing

Behaviorstatemachine

Protocolstatemachine

Use‐casediagrams

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

Diagramname Usedto PrimaryPhase

StructureDiagrams

Class IllustratetherelaDonshipsbetweenthemodeledclasses Analysis,Design

Object IllustratetherelaDonshipsbetweenthemodeledobjects.Usedwhenactualinstancesofclasseswillbe`ercommunicatethemodel.

Analysis,Design

Package GroupotherUMLelementstoformhigherlevelconstructs Analysis,Design,ImplementaDon

Deployment Showthephysicalarchitectureofthesystem PhysicalDesign,ImplementaDon

Component IllustratethephysicalrelaDonshipsamongtheswcomponents PhysicalDesign,ImplementaDon

CompositeStructure Illustratetheinternalstructureofaclass Analysis,Design

BehavioralDiagrams

AcDvity Illustratebusinessworkflowsindependentofclasses,theflowofacDviDesinausecase,ordetaileddesignofamethod

Analysis,Design

Sequence Modelthebehaviorofobjectswithinausecase.Time‐based Analysis,Design

CommunicaDon Modelthebehaviorofobjectswithinausecase.FocusesonthecommunicaDonamongasetofcollaboraDngobjectsofanacDvity

Analysis,Design

InteracDonoverview Illustrateanoverviewoftheflowofcontrolofaprocess Analysis,Design

Timing IllustratetheinteracDonthattakesplaceamongasetofobjectsandthestatechangesinwhichtheygoalongaDmeaxis

Analysis,Design

BehavioralSM Examinethebehaviorofoneclass Analysis,Design

ProtocolSM Illustratethedependenciesamingthedifferentinterfacesofaclass Analysis,Design

Use‐Case CapturebusinessrequirementsforasystemandtoillustratetheinteracDonbetweenthesystemanditsenvironment

Analysis

JoãoPauloFernandes,jpf@di.ubi.ptNunoM.Garcia,ngarcia@di.ubi.pt

Summary

UNIVERSIDADEDABEIRAINTERIORFaculdadedeEngenhariaDepartamentodeInformáDca JoãoPauloFernandes,jpf@di.ubi.pt

30

Object‐orientedsystemsdifferfromtradiDonalsystems

Object‐OrientedSystemsAnalysisandDesignusesause‐case‐driven, architecture‐centric, iteraDve, andincrementalinformaDonsystemsdevelopmentapproach

TheUnifiedModeling Language, orUML, is a standardset of diagramming techniques that can be used tosupportOOSAD

top related