120 likes | 254 Views
Structured Systems Analysis and Design Methodology. Northern College Diploma Philip Bird. Why Bother?. Need to plan and organise – link to life cycle. Help communicate ideas. Get processes (functions) right – Data flow modelling. Get data right – Entity modelling.
E N D
Structured Systems Analysis and Design Methodology Northern College Diploma Philip Bird
Why Bother? • Need to plan and organise – link to life cycle. • Help communicate ideas. • Get processes (functions) right – Data flow modelling. • Get data right – Entity modelling. • Cross reference the two – checks built-in. • Can be automated.
Data Flow Modelling • Describe the current physical system. • Show processes together with data flows between them. • Show data stores. • Use these to discuss problems with users and help identify requirements for new system.
Check stock availability Copy order Customer Order Stock level Product Order Order Order
Entity Modelling • Things the system needs to store data about • Physical – cars, products • People – customers, employees • Abstractions – order, invoice, booking • Each entity has a unique identifier – key attribute/field. • Entities linked via relationships.
One to One 1:1 Woman Is the husband of Is married to Man
One to Many 1:N Tutor Has Is allocated to Student
Actor Has Role Appears in Film Many to Many M:N Actor Film
Entity Attributes ° Employee number Name Address Tax code NI number Pay to date Tax to date Employee °Key field
An Example – Hire Car Booking Customer Customer#, Name, Address, Tel Booking Customer#, Date, Car reg, Duration Car Car reg, Make, Model, Type, Seats, Cost Date, Mileage, Description, Mechanic Service Name, Qualifications Mechanic
Entity Life Histories • Describes the entity over time. • Check to see there are no missing processes. Are there processes to create, update and delete the entity? • Produce diagram that serves as an initial program design.
ELH For Appointment Entity Appt Make Appt Change Appt * Visit New Year Where in the DFD is there a process to change an appointment? º º º = Alternative Has Appt No Appt * = Repetition