Presentation is loading. Please wait.

Presentation is loading. Please wait.

Design & Development Scott Battaglia Application Developer Enterprise Systems and Services Rutgers, the State University of New Jersey

Similar presentations


Presentation on theme: "Design & Development Scott Battaglia Application Developer Enterprise Systems and Services Rutgers, the State University of New Jersey"— Presentation transcript:

1 Design & Development Scott Battaglia Application Developer Enterprise Systems and Services Rutgers, the State University of New Jersey scott_battaglia@rutgers.edu Copyright Scott Battaglia 2006. This work is the intellectual property of the author. Permission is granted for this material to be shared for non-commercial, educational purposes, provided that this copyright statement appears on the reproduced materials and notice is given that the copying is by permission of the author. To disseminate otherwise or to republish requires written permission from the author.

2 Background Enterprise Systems and Services (ESS) Architecture and Engineering Team  Research  Development  Mentoring

3 Agenda Development Lifecycle Technologies Questions

4 Development Process Gather requirements High level planning Application Development System testing Release

5 Mission Statement Every application has a purpose or reason for being Clear and succinct representation of the application’s purpose Answer two questions:  What are the opportunities or needs that we wish to address?  What are we doing to address these needs?

6 Non-Functional Requirements Define how the software will do something, not what it will do  software performance requirements,  software external interface requirements,  software design constraints,  and software quality attributes

7 Functional Requirements Specifies a function that a system/software system or system/software component must be capable of performing. Define behavior of the system Usually defined as use cases

8 Risks Every application has unknowns or risks Affect development time

9 High Level Planning Iterative and incremental development Define:  Milestones  Release Candidates  General Audience release Phase development

10 Iterative Development Develop system incrementally Allows developer to take advantage of what was being learned Start with simple implementation of subset of features Iteratively enhance the versions until product completion

11 Milestones Denote reaching an identifiable stage in completion of something Implement some subset of features Generally implemented in terms of use cases

12 Milestones Generally consist of following phases  Design/Analysis  Unit Tests  Feature implementation  Load Testing/Soak Testing  Milestone release  Client review

13 Milestones - Feedback Either demo milestone to clients Or give time to review Meet to discuss milestone  Changes  Enhancements  Scrap features

14 Release Candidates Denotes feature complete Candidate for release as long as there are no show stoppers Follows iterative process

15 General Audience Generally only one Considered production release

16 Important Meetings During development lifecycle meetings are important:  Kick off meetings  Code Reviews  Milestone Reviews  Status Meetings  Production Meetings  After Release Party

17 Coding Standards Define  Naming Conventions  Formatting Standards  Javadoc Standards Best Practices  Leverage known libraries  Coding to interfaces  Logging  Horizontal components  Design Patterns

18 Technologies Integrated Development Environments (IDEs) Versioning Systems Issue Tracking Systems Test Coverage Tools Build Tools Continuous Integration Systems Mailing Lists

19 Summary Iterative design process Development process is agile, lightweight Create common standards Maximize usage of technology

20 Questions Any questions/comments?


Download ppt "Design & Development Scott Battaglia Application Developer Enterprise Systems and Services Rutgers, the State University of New Jersey"

Similar presentations


Ads by Google