+ All Categories
Home > Documents > 0001 OOAD 2015 1

0001 OOAD 2015 1

Date post: 10-Dec-2015
Category:
Upload: vijay-gaur
View: 223 times
Download: 1 times
Share this document with a friend
Description:
object oriented analysis design
17
Slide 1 Object-Oriented Analysis and Design CS-604 Subject Incharge Dr. Paramvir Singh Assistant Professor E-mail: [email protected]
Transcript

Slide 1

Object-Oriented Analysis and DesignCS-604

Subject InchargeDr. Paramvir SinghAssistant Professor

E-mail: [email protected]

Slide 2

Recommended Course Textbooks

• Roger S. Pressman (2010)Software Engineering:A Practitioner's Approach,7th edition, McGraw-Hill, USA

• Sommerville I. (2001,2004)Software Engineering 9th Edition (/Latest), Addison-Wesley, Harlow, Essex,UK

• Stevens P. with Pooley, R. (2010)Using UML: Software Engineering with Objects and Components,Addison-Wesley, Harlow, Essex, UK

Slide 3

Recommended Course Textbooks

• Head First OOAD – O’Really Publications• Object Oriented Software Engineering - McGrawHill

Slide 4

What is software?

• Computer programs and associated documentation

Slide 5

Software Vs Hardware

• Software is developed or engineered; it is not manufactured in the classical sense– Impacts the management of software projects

• Software doesn't wear out– Hardware bathtub curve compared to the

software ascending spiked curve• Although the industry is moving toward

component-based construction, most software continues to be custom built (it is still complex to build)

Slide 6

Software Vs Hardware

idealized curve

change

actual curve

Failurerate

Time

increased failurerate due to side effects

Slide 7

Changing Nature of Software

• System software (OS, drivers, file management utility) • Application software (Hostel Management system, Lib. System)• Engineering/scientific software (Satellite, Calculator, Earthquake intensity

measurement)• Embedded software (AC, TV etc)• Product-line software (e.g., inventory control, word processing, multimedia)• Web applications (Gtalk, Websites, Email services)• Artificial intelligence software (Robotic, Gaming, ANN)• Open world computing (small, wireless devices)• Open source (operating systems, databases, development environments)• The ".com" marketing applications

Slide 8

Use SE to ENSURE

• Quality– Software is of highest quality

• Time Schedule– Software finishes on estimated time

• Cost Schedule– Software consumes estimated budget

• Managed– Software is easily manageable after release

Slide 9

The Four P’s of Software Engineering

• People — the most important element of a successful project

• Product — the software to be built

• Process — the set of framework activities and software engineering tasks to get the job done

• Project — all work required to make the product a reality

Slide 10

The Four P’s of Software Engineering

End Product

Process 1 OR Process 2 OR Process 3

Selected based on:•Cost•Time •Quality•Resources

Slide 11

The Four P’s of Software Engineering

Selected based on:•Cost•Time •Quality•Resources

Slide 12

What is a Process?

• (Webster) A system of operations in producing something; a series of actions, changes, or functions that achieve an end or a result

• (IEEE) A sequence of steps performed for a given purpose

Slide 13

Generic Process Framework

Analysis Design Code Test

Communication Planning Modelling Construction

Obsolete Approach

Modern Approach

Deployment

Analysis Design Code Test

Slide 14

Generic Process Framework

• Communication– Involves communication among the customer and other stake holders;

encompasses requirements gathering• Planning

– Establishes a plan for software engineering work; addresses technical tasks, resources, work products, and work schedule

• Modeling (Analyze, Design)– Encompasses the creation of models to better understand the requirements and the

design• Construction (Code, Test)

– Combines code generation and testing to uncover errors• Deployment

– Involves delivery of software to the customer for evaluation and feedback

Slide 15

Software Engineering is a Layered Technology

Tools

Methods

Processes

Quality Focus

Slide 16

Process, Methods, and Tools

• Process– Provides the glue that holds the layers together; enables rational and

timely development; provides a framework for effective delivery of technology; forms the basis for management; provides the context for technical methods, work products, milestones, quality measures, and change management

• Methods– Provide the technical "how to" for building software; rely on a set of

basic principles; encompass a broad array of tasks; include modeling activities

• Tools– Provide automated or semi-automated support for the process and

methods (i.e. CASE tools)

Slide 17

Umbrella Activities (In addition to General Framework Activities)

• Software requirements management• Software project planning• Software project tracking and oversight• Software quality assurance• Software configuration management• Software subcontract management• Formal technical reviews• Risk management• Measurement – process, project, product• Reusability management (component reuse)• Work product preparation and production


Recommended