File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
The moose likes General Computing and the fly likes Software Applications Knowledge Transfer Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of EJB 3 in Action this week in the EJB and other Java EE Technologies forum!
JavaRanch » Java Forums » Engineering » General Computing
Bookmark "Software Applications Knowledge Transfer" Watch "Software Applications Knowledge Transfer" New topic
Author

Software Applications Knowledge Transfer

JiaPei Jen
Ranch Hand

Joined: Nov 19, 2000
Posts: 1309
As a result of a rebid, the Company A for which I am working recently won a contract that had been administered by the Company B for the past 7 years.

To fully possess the application that was built by the Company B, I am preparing a list of questions (see below) to facilitate the transfer. Because my skills in the field are not quite up to the task, I am inviting comments and suggestions to ensure a smooth knowledge tranfer.

Particularly, I have no prior experience in the areas of building an application to Dev, Sat, and Prod and releasing an application, what should I ask in order to possess the knowledge in building and releasing an application?



Here is the list compiled by me:

1. Provide software application development documents; e.g. uses cases, sequence diagrams, class diagrams, and etc. If the aforementioned documents are unavailable, what are the document standards followed? And please provide those documents.

2. Provide the User's Manual for the software application developed

3. Provide access to software application code version control repository

4. List the application development environment
What is the operating system used? Is it the Windows (which version)? Or UNIX (which version)? Or both? Or others?
What is/are the application server(s) and their respective version(s) used for software development? WebSphere (which version)? Or WebLogic (which version)? Or Jboss (which version)? Or some other server(s)?
What is the portal server used (which version)?
What is the IDE and its version used for software development? The Eclipse? The NetBeans? Or some other IDE?
What is used for version control? CVS? Or SVN? Or something else?
5. Provide application production server configurations for code development and deployment
Examples:
Services configuration; such as data source, connection pool, transaction services, messaging services, cache services, authentication services, etc.

6. List the application development languages used and their respective versions
Examples: HTML and XML and their derivatives? XSL and its derivatives? Java? C#? AJAX? JavaScripts? Sevlets? JSP? JavaBean? EJB? Perl? VBScript? and etc.
Is the application web based? Or it is also a wireless application that uses WML or some other technologies to render data onto hand held devices
Is the Web Services technologies; SOAP, WSDL, UDDL, and etc., used in developing the application?

7. List all the code development tools and their versions used for the application code development

8. List all the frameworks and their versions used for the application code development
Examples: Struts, Spring, Hibernate, and etc.

9. Provide the original Java code of all the customized JAR files used in the application

10. List all the third party products used for the application development

11. List all the utility functionalities provided by the application and the technologies used to implement those functionalities
Examples:
Does the application generate printouts? What are the format of those printouts? PDF? MS Excel? MS Word? And/or others?
Does the application use single sign-on?
What are the technologies used to impose application security (e.g. authentication and authorization)?
Does the application provide e-mail functionality? Is JavaMail used to implement the e-mail functionality?
Does the application generate reports? What technologies are used? JReport? Crystal Report? Or some other technologies?

12. Provide ANT/Maven scripts that are used to build and deploy and application

13. Provide the schema and DDL of the database tables used for the application development

14. Provide the code for all the stored procedures used for the application development

15. List the data persistence and retrieval languages used for the application development
Examples: SQL? Or PL/SQL? Or others?

16. List all the business rules implemented in the application

17. Document the business rules engines used to implement the business rules in the application

18. Provide all the images and watermarks used in the application

19. List all the code testing tools used for unit test, integration test, and module test of the application
Examples: Junit, Easy Mock, etc.


Thank you very much.
K. Tsang
Bartender

Joined: Sep 13, 2007
Posts: 1966
    
    7

Well you seem to have prepared. The one thing you should also ask is for them to do a demo of that application. Once you understand the flow especially if those use cases are documented.

Another thing you should be prepared is what happens if they don't have any docs? No uml, user guides etc. And worse when you get the source code there aren't much comments. Given this scenario, having seen a demo would definitely help because the layout would most like indicate what features/functions are provides.

Oh depending on how "stable" the existing system is, are there any outstanding features or bugs that they are working in process (especially in the svn/cvs version).


K. Tsang JavaRanch SCJP5 SCJD/OCM-JD OCPJP7
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: Software Applications Knowledge Transfer
 
Similar Threads
Java Architect - Toronto
SENIOR JAVA SOFTWARE DEVELOPER � INSURANCE INDUSTRY SOFTWARE � TAMPA BAY (NF1169)
Few Question For J2EE Developer
Java/J2EE Architect (Contract-to-hire) (511449)
Java, J2EE, Swing/SWT Developer (Work From Home)