Presentation is loading. Please wait.

Presentation is loading. Please wait.

Notion of a Project Notes from OOSE Slides - modified.

Similar presentations


Presentation on theme: "Notion of a Project Notes from OOSE Slides - modified."— Presentation transcript:

1 Notion of a Project Notes from OOSE Slides - modified

2 Software Engineering Projects ► Most projects are evolutionary or maintenance projects, involving work on legacy systems  Corrective projects: fixing defects  Adaptive projects: changing the system in response to changes in ► Operating system ► Database ► Rules and regulations  Enhancement projects: adding new features for users  Reengineering or perfective projects: changing the system internally so it is more maintainable

3 Software Engineering Projects ► ‘Green field’ projects  New development  The minority of projects

4 Software Engineering Projects ► Projects that involve building on a framework or a set of existing components.  The framework is an application that provides many features but is missing some important details (on purpose).  Such projects: ► Involve plugging together components that are:  Already developed.  Provide significant functionality. ► Benefit from reusing reliable software. ► Provide much of the same freedom to innovate found in green field development.

5 Activities Common to Software Projects... ► Requirements and specification  Includes ► Domain analysis ► Defining the problem ► Requirements gathering  Obtaining input from as many sources as possible ► Requirements analysis  Organizing the information ► Requirements specification  Writing detailed instructions about how the software should behave

6 Activities Common to Software Projects... ► Design  Deciding how the requirements should be implemented, using the available technology  Includes: ► Systems engineering: Deciding what should be in hardware and what in software ► Software architecture: Dividing the system into subsystems and deciding how the subsystems will interact ► Detailed design of the internals of a subsystem ► User interface design ► Design of databases

7 Activities Common to Software Projects (continued) ► Modeling  Creating representations of the domain or the software ► Use case modeling ► Structural modeling ► Dynamic and behavioral modeling ► Programming ► Quality assurance  Reviews and inspections  Testing ► Deployment ► Managing the process

8 Difficulties and Risks in Software Engineering ► Risk Analysis is a key feature in all software development projects. ► Everything we do or change, such as new technologies, new requirements, new personnel, ALL have associated risk and need to be assessed. ► Risk must be addressed: mitigated, accepted, out-sourced, but not ignored!

9 Difficulties and Risks in Software Engineering Difficulties and Risks in Software Engineering ► Complexity and large numbers of details  A major concern as features are ‘added.’  Design for flexibility by ensuring the software architecture has identified subsystems, etc.  Keep it simple and be careful about accepting change. Are they really necessary? ► Uncertainty about technology  Use proven technologies; try out new technologies by prototyping

10 ► Uncertainty about requirements  Attempt to understand the application domain as completely as possible in order to communicate with clients and other users.  Prototype to get good feedback on potential problems.  Expect change; design with change in mind.  Encourage user involvement. ► Uncertainty about software engineering skills  Ensure people are trained in the technologies!!!  Provide mentoring from senior developers ►

11 ► Constant change  Both technology and requirements will change!  Try to distinguish the really important changes from those lesser ► Deterioration of software design  Design can become horrible from successive changes if not built for flexibility and change.  Approach Change with respect but with caution. Be certain to understand the change. ► Political risks  Will be difficult to satisfy everyone.  Try to promote the products.  Recognize how the system will affect all stakeholders. ► Above all, have fun!


Download ppt "Notion of a Project Notes from OOSE Slides - modified."

Similar presentations


Ads by Google